Changes between Version 50 and Version 51 of Tutorials/Wireless/Fosphor


Ignore:
Timestamp:
Jan 16, 2026, 5:21:17 PM (15 hours ago)
Author:
omikumar
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Tutorials/Wireless/Fosphor

    v50 v51  
    118118
    119119[[Image(rfnoc_fosphor_2_4G.PNG, width=800px)]]
     120
     121
     122==== Caution ====
     123
     124While imaging the ceiling USRP-X310 nodes (for example, node18-20 on the grid), you might encounter the following error while executing the fosphor flowgraph with GNURadio Companion,
     125
     126{{{
     127Generating: "/tmp/rfnoc_fosphor.py"
     128
     129Executing: /usr/bin/python3 -u /tmp/rfnoc_fosphor.py
     130
     131[INFO] [UHD] linux; GNU C++ version 11.4.0; Boost_107400; UHD_4.4.0.0-33-g4a77791c
     132[INFO] [X300] X300 initialization sequence...
     133[INFO] [X300] Connecting to niusrpriorpc at localhost:5444...
     134Traceback (most recent call last):
     135  File "/tmp/rfnoc_fosphor.py", line 287, in <module>
     136    main()
     137  File "/tmp/rfnoc_fosphor.py", line 264, in main
     138    tb = top_block_cls()
     139  File "/tmp/rfnoc_fosphor.py", line 72, in __init__
     140    self.rfnoc_graph = uhd_rfnoc_graph = uhd.rfnoc_graph(uhd.device_addr(",type=x300,resource=RIO0"))
     141RuntimeError: EnvironmentError: IOError: Could not find the image 'usrp_x310_fpga_HG.lvbitx' in the image directory /usr/local/share/fosphor_bit/
     142For more information regarding image paths, please refer to the UHD manual.
     143
     144>>> Done (return code 1)
     145}}}
     146
     147==== Why is this error happening ? ====
     148
     149This is happening because when we execute the flowgraph, UHD tries to load a specific FPGA image named:
     150
     151{{{#!shell
     152usrp_x310_fpga_HG.lvbitx
     153}}}
     154
     155But in the system that exact file does not exist. So UHD aborts and your script crashes.
     156
     157==== Possible solution ====
     158
     159One possible solution can be to create a symbolic link that points to an existing FPGA bitstream file located elsewhere on the system. Essentially, it tricks UHD into finding the file it expects, even though the actual file has a different name.
     160
     161{{{#!shell
     162sudo ln -s /usr/local/share/fosphor_bit/usrp_x310_fpga_XG.lvbitx /usr/local/share/fosphor_bit/usrp_x310_fpga_HG.lvbitx
     163}}}