Hi Maria,

I'm not sure what's going on. Can you run rfnoc_image_builder -l debug
[...your options...] and post the line that says "Executing the following
command: ..."? I wonder if RFNOC_OOT_MAKEFILE_SRCS is correctly set.

BTW, if you just upgraded to 4.6, consider upgrading to 4.7. On the X440,
very little changed, but the image builder got its first overhaul in a
while, and therefore there's a better chance of supporting folks using that.
That said, it's a bigger upgrade path because we changed some things in the
way the image core YAML files are constructed.

--M

On Thu, Jul 18, 2024 at 11:32 AM Maria Muñoz <mamuk...@gmail.com> wrote:

> Hi Martin,
>
> I had another issue once I resolved the YML problem. I start the synthesis
> with this command:
>
>  rfnoc_image_builder -y x440_200_nbc_rfnoc_image_core.yml -d x440 -t
> X440_X4_200 --fpga-dir ~/rfnoc/uhd/fpga/
>
> But Vivado can't find my OOT block:
>
> ERROR: [Synth 8-439] module 'rfnoc_block_nbcv2' not found
> [~/rfnoc/gr-ettus/rfnoc-nbc_v2/rfnoc/icores/x440_200_rfnoc_image_core.v:1512]
>
> I've used the x440_200_nbc_rfnoc_image_core.yml example
> in uhd/fpga/usrp3/top/x400/ but added a new EP to connect my block. I've
> also reviewed the  x440_200_rfnoc_image_core.v generated and it instance my
> module name correctly.
>
> As it is my first time using UHD 4.6 (I usually use 4.0) I don't know if I
> need to do any other modifications to Makefiles to find my block. I tried
> to indicate the OOT folder with the -I option in rfnoc_image_builder, but I
> got the same error.
>
> What I usually do with 4.0 is the following:
> 1) Generate block with rfnocmodtool
> 2) Modify grc, lib, include, FPGA, block, and icore folders to include my
> block code. Add to the fpga/Makefile.srcs all the vhdl/verilog sources for
> my FPGA code.
> 3) Build my block
> 4) Move to the icore folder of my block and run the rfnoc_image_builder
> command.
>
> Is there something that I'm missing for the 4.6 version?
>
> Kind Regards,
>
> Maria
>
>
> El mié, 17 jul 2024 a las 13:13, Martin Braun (<martin.br...@ettus.com>)
> escribió:
>
>> In that case you can just do
>>
>> apt install python3-ruamel.yaml
>>
>> and make sure you have no other version installed.
>>
>> --M
>>
>> On Wed, Jul 17, 2024 at 12:22 PM Maria Muñoz <mamuk...@gmail.com> wrote:
>>
>>> Hi Martin,
>>> .
>>> Thanks for your answer. I will do the workaround.
>>> By the way, I'm using Ubuntu 20.04.
>>>
>>> Kind Regards,
>>>
>>> El mié, 17 jul 2024 a las 12:07, Martin Braun (<martin.br...@ettus.com>)
>>> escribió:
>>>
>>>> Quick addendum: If you do update to 4.7, you will need to update some
>>>> image core files, because we changed stuff for X410 and X440. Best to go
>>>> back to the YAML files we provide in-tree and add your OOT blocks to those.
>>>>
>>>> --M
>>>>
>>>> On Wed, Jul 17, 2024 at 12:05 PM Martin Braun <martin.br...@ettus.com>
>>>> wrote:
>>>>
>>>>> Hey Maria,
>>>>>
>>>>> thanks for reporting this issue. Some pointers:
>>>>> - As a workaround, you can install ruamel.yaml 0.17. I don't know how
>>>>> you installed it before, but you can do `pip install "ruamel.yaml<0.18.0"`
>>>>> if you used pip before.
>>>>> - I need to double-check this, but I think UHD 4.7 has a fix for this.
>>>>> If not, we will need to fix this ASAP (note to myself)
>>>>>
>>>>>
>>>>> Can you provide some info on your system (OS, distribution, etc.)?
>>>>> Many thanks,
>>>>>
>>>>> Martin
>>>>>
>>>>> On Wed, Jul 17, 2024 at 11:05 AM Maria Muñoz <mamuk...@gmail.com>
>>>>> wrote:
>>>>>
>>>>>> Hi all,
>>>>>>
>>>>>> I'm trying to use the UHD 4.6 version with RFNoC to build an image
>>>>>> for the x440 USRP device. I used UHD 4.0 for USRP E320 without a problem,
>>>>>> but now I have an issue with the YML files for the X440 image building.
>>>>>> I have installed UHD 4.6, GNURadio 3.8, and gr-ettus (to have the
>>>>>> rfnocmodtool command).
>>>>>> I can build my block in software without issues but when I try to
>>>>>> create the FPGA image with rfnoc_image_builder an error occurs:
>>>>>>
>>>>>> >> *rfnoc_image_builder -y block_x440_rfnoc_image_core.yml -d x440
>>>>>> -t X4_400 --fpga-dir ~/rfnoc/uhd/fpga/*
>>>>>> *[WAR] Module jsonschema is not installed. Configuration files will
>>>>>> not be validated against their schema.*
>>>>>> *[WAR] Skip schema validation (missing module jsonschema).*
>>>>>> *[INF] Using FPGA directory /home/satmotion/rfnoc/uhd/fpga*
>>>>>> *[INF] Selected device x440*
>>>>>> *[INF] Using io_signatures.yml from /usr/local/share/uhd/rfnoc/core.*
>>>>>> *Traceback (most recent call last):*
>>>>>> *  File "/usr/local/bin/rfnoc_image_builder", line 240, in <module>*
>>>>>> *    sys.exit(main())*
>>>>>> *  File "/usr/local/bin/rfnoc_image_builder", line 219, in main*
>>>>>> *    image_builder.build_image(*
>>>>>> *  File
>>>>>> "/usr/local/lib/python3.8/site-packages/uhd/imgbuilder/image_builder.py",
>>>>>> line 1112, in build_image*
>>>>>> *    signatures_conf = io_signatures(core_config_path)*
>>>>>> *  File
>>>>>> "/usr/local/lib/python3.8/site-packages/uhd/imgbuilder/image_builder.py",
>>>>>> line 666, in io_signatures*
>>>>>> *    return load_config(os.path.join(config_path,
>>>>>> "io_signatures.yml"))*
>>>>>> *  File
>>>>>> "/usr/local/lib/python3.8/site-packages/uhd/imgbuilder/image_builder.py",
>>>>>> line 640, in load_config*
>>>>>> *    config = ordered_load(stream)*
>>>>>> *  File
>>>>>> "/usr/local/lib/python3.8/site-packages/uhd/imgbuilder/image_builder.py",
>>>>>> line 115, in ordered_load*
>>>>>> *    return yaml.load(stream, OrderedLoader)*
>>>>>> *  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/main.py",
>>>>>> line 1085, in load*
>>>>>> *    error_deprecation('load', 'load', arg=_error_dep_arg,
>>>>>> comment=_error_dep_comment)*
>>>>>> *  File "/usr/local/lib/python3.8/dist-packages/ruamel/yaml/main.py",
>>>>>> line 1037, in error_deprecation*
>>>>>> *    raise AttributeError(s)*
>>>>>> *AttributeError: *
>>>>>> *"load()" has been removed, use*
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> *  yaml = YAML(typ='rt')  yaml.load(...)and register any classes that
>>>>>> you use, or check the tag attribute on the loaded data,instead of file
>>>>>> "/usr/local/lib/python3.8/site-packages/uhd/imgbuilder/image_builder.py",
>>>>>> line 115    return yaml.load(stream, OrderedLoader)*
>>>>>>
>>>>>> Do you know how I can solve this problem?
>>>>>>
>>>>>> Kind, Regards,
>>>>>>
>>>>>> Maria
>>>>>> _______________________________________________
>>>>>> USRP-users mailing list -- usrp-users@lists.ettus.com
>>>>>> To unsubscribe send an email to usrp-users-le...@lists.ettus.com
>>>>>>
>>>>>
_______________________________________________
USRP-users mailing list -- usrp-users@lists.ettus.com
To unsubscribe send an email to usrp-users-le...@lists.ettus.com

Reply via email to