FPGA compatibility issues

55 views
Skip to first unread message

arush sharma

unread,
Aug 19, 2025, 2:08:20 PMAug 19
to Powder Users
Dear Cyberpowder community,

I am currently facing with an FPGA compatibility issue where I get the following runtime error: " Expected FPGA compatibility number 39.0, but got 38.0: The FPGA image on your device is not compatible with this host code build. Download the appropriate FPGA images for this version of UHD."

I browsed this forum, and based on the instructions, I was able to update the FPGA firmware, followed by power-cycling the node which can be seen from the screenshot below.fpga_install.png
But when I try to verify the installation (uhd_usrp_probe --args="addr=192.168.40.2") after power-cycling, it again gives the same issue
fpga_verify.png

It would be great if anyone could let me know where I am doing wrong. The link to my experiment is as follows: https://www.powderwireless.net/instantiate.php?profile=9c4ee80c-45cf-11ec-b200-e4434b2381fc&rerun_instance=8eb23b7b-7c6e-11f0-bc80-e4434b2381fc

Thank you for your help,
Arush

Mike Hibler

unread,
Aug 19, 2025, 4:10:57 PMAug 19
to powder...@googlegroups.com
Looks like you are trying to load UHD 4.8?

4.7 is the version we support right now and is what is loaded on the SDRs
by default. You can get Ubuntu22 + UHD 4.7 by using the UBUNTU22-64-GR310
image on your compute node.

On Tue, Aug 19, 2025 at 11:08:20AM -0700, arush sharma wrote:
> Dear Cyberpowder community,
>
> I am currently facing with an FPGA compatibility issue where I get the
> following runtime error: " Expected FPGA compatibility number 39.0, but got
> 38.0: The FPGA image on your device is not compatible with this host code
> build. Download the appropriate FPGA images for this version of UHD."
>
> I browsed this forum, and based on the instructions, I was able to update the
> FPGA firmware, followed by power-cycling the node which can be seen from the
> screenshot below.fpga_install.png
> But when I try to verify the installation (uhd_usrp_probe --args="addr=
> 192.168.40.2") after power-cycling, it again gives the same issue
> fpga_verify.png
>
> It would be great if anyone could let me know where I am doing wrong. The link
> to my experiment is as follows: https://www.powderwireless.net/instantiate.php?
> profile=9c4ee80c-45cf-11ec-b200-e4434b2381fc&rerun_instance=
> 8eb23b7b-7c6e-11f0-bc80-e4434b2381fc
>
> Thank you for your help,
> Arush
>
> --
> You received this message because you are subscribed to the Google Groups
> "Powder Users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email
> to powder-users...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/powder-users/
> 347e2638-9fab-4450-a1d5-337589fe2479n%40googlegroups.com.



Message has been deleted

arush sharma

unread,
Aug 19, 2025, 6:08:54 PMAug 19
to Powder Users
Is there a way to change the Boot image? I tried to select the "Modify" option from POWDER GUI but don't know the proper way of modifying the boot image. When I instantiated this experiment, the default image happened to be: emulab-ops/UBUNTU22-64-STD

Mike Hibler

unread,
Aug 19, 2025, 7:24:55 PMAug 19
to powder...@googlegroups.com
Unfortunately, "Modify" can only change things that are parameters to the
profile and the boot image is not in this case. But you should be able to
deinstall uhd-4.9 on your current UBUNTU22-64-STD node and install 4.8
instead.
> 0f3de1b3-57a4-4aa2-94a7-dabb356dd982n%40googlegroups.com.

Kirk Webb

unread,
Aug 20, 2025, 11:15:59 AMAug 20
to powder...@googlegroups.com
I believe you are trying to use an image name that is not a fully
qualified URN. Try this instead:

urn:publicid:IDN+emulab.net+image+emulab-ops//UBUNTU22-64-GR310

However, I believe the issue here is that you rebooted the compute
node; you did not power cycle the *radio*. You need to do the latter
for it to boot up with the correct firmware after flashing it. You can
do this from the POWDER UI while viewing your experiment. Click "list
view", find the row for the *radio* in question (NOT the associated
node), click the cog icon at the end of the row, select "power cycle",
and confirm. Once the radio comes back up, `uhd_usrp_probe` should run
successfully.

-Kirk
> To view this discussion visit https://groups.google.com/d/msgid/powder-users/0f3de1b3-57a4-4aa2-94a7-dabb356dd982n%40googlegroups.com.

arush sharma

unread,
Aug 20, 2025, 8:24:12 PMAug 20
to Powder Users
Thanks, Mike and Kirk, for your suggestions. Since I terminated yesterday's experiment, I will follow your approach when I encounter this situation again. I am pretty sure that I was doing power cycling of the node through POWDER GUI many times when I tried downgrading the version of UHD in the host PC for compatibility purposes (from UHD 4.8.0.0 to UHD 4.7.0.0 and UHD 4.6.0.0). I wish I had the screenshots saved, but after successfully flashing the appropriate UHD version, the command "uhd_find_devices" indeed displayed the correct version of UHD. However, "uhd_usrp_probe" always gave the same error message stating: " Error: RuntimeError: Expected FPGA compatibility number 39.0, but got 38.0: ...." (which is why I terminated the experiment). But as you said, I should have power-cycled the radio, which I might have inadvertently missed.
Reply all
Reply to author
Forward
0 new messages