-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Usage of 5Ghoul with USRP N310 #23
Comments
Hi @purvajoshi1 currently, we use configuration files from OpenAirInterface. You can change You can replace it with another config. file provided by OAI instead: https://gitlab.eurecom.fr/oai/openairinterface5g/-/blob/0afa3f3193f77ce718148ca48cbf18b321d1cf23/ci-scripts/conf_files/gnb.band78.sa.fr1.106PRB.2x2.usrpn310.conf Note that you'd need to change this line to match the IP address of your X310: https://gitlab.eurecom.fr/oai/openairinterface5g/-/blob/0afa3f3193f77ce718148ca48cbf18b321d1cf23/ci-scripts/conf_files/gnb.band78.sa.fr1.106PRB.2x2.usrpn310.conf#L247 |
Thanks for the information! Can you provide further guidance on why the base station process might crash/stop despite updating the config for the X300? I'm assuming you don't need to rebuild 5ghoul or anything to use the modified configs. The command I am testing with... I have also tested connectivity with the USRP X300 within the release-5g container using the following cmds (suggested by the USRP docs): Both of which are providing the expected cmd output. |
Hi @micahflack you can try passing another argument ( Otherwise I'd suggest that you try manually running OAI inside the container to check what errors logs you get from it. cd ./3rd-party/oai_5g_sa/cmake_targets/ran_build/nr-softmodem
sudo ./nr-softmodem -O ../../../../../configs/n78.106.X300.conf --sa --usrp-tx-thread-config 1 -E --continuous-tx |
Thanks! I ran the last command that you shared and this was the following output:
The error suggests something to do with syntax in the Expected contents (from OAI provided config):
Contents after running
So, as a heads up to others... In order for the X300 config used: gnb.band78.sa.fr1.106PRB.usrpn310.conf When running the fuzzer, the base station process doesn't repeatedly crash - but it now seems to be hanging or waiting for something since the "gNB started" message does not appear either. Is there maybe an option within the 5g_fuzzer for more verbose outputs from the OAI? edit: I forgot to mention that the nr-softmodem cmd worked after fixing the config plmn format issue; but I haven't figured out the base station process stopping yet |
Some log files for context...
|
I ran the nr-softmodem within gdb to debug the segmentation fault that occurs, and it was apparently caused by...
So, the issue is with OpenAirInterface for sure. I'll add the backtrace from the crash on my other machine in a moment. In the meantime, it appears that someone else has experienced this issue before and reported it to OAI git... nr-softmodem: reproducible segfault in libuhd with Ettus N310 SDR (including proposed fix) With commit #2338 it looks like they fixed the bug, which was about 6 months ago. I'll try rebuilding 5ghoul with a newer release of OAI and see if that resolves the compatibility with the X300. |
Backtrace for nr-softmodem using the X300.
|
Rather than using a newer release version, I used the provided patch instead.
This allows the nr-softmodem to proceed without segfaulting, however, another error occurs... [ERROR_CODE_OVERFLOW]...
This issue is also known to OAI #606 - USRP X310: nr-softmodem gives ERROR_CODE_OVERFLOW. Besides the initial segfault issue - it looks like our configuration with the 1G/10G interface on the X300 is incorrect. If I find the solution, I will let you all know. |
Our X300 is now working! It turns out that our configuration for the 10G interface was incorrect. After rereading the USRP Hardware Driver and USRP Manual, and then checking the SFP+ connectors used, I noticed that I was using an 1G SFP+ connector on the 10G Port 1. So, if you are experiencing connectivity issues with the USRP or see [ERROR_CODE_OVERFLOW], double check your interfaces.
Assuming your interfaces are connected correctly, you still need to do the following steps to use the X300:
Adding the patch and rebuilding OAI is really easy, just do the following:
Here is the config that we used: n78.106.X300.conf.txt You should then be able to run the 5ghoul fuzzer or attacks!
|
We got our N310 to work as well - same process as before with the X300.
Here is the conf used: n78.106.n310.conf.txt edit: double check your USRP address! our addr here is 192.168.20.2, but your addr will likely be different! |
@micahflack Thanks a lot and sorry for the delay. Since we don't have other SDRs, it's a bit difficult for us to troubleshoot on our end. However, will certainly add your changes to the repo to enable support for both X300 and N310. Thanks a lot for your work 👍 |
@micahflack by the way, did you have to run uhd_images_downloader before doing the tests with those SDRs? |
Hi @Matheus-Garbelini @micahflack : |
@Matheus-Garbelini no worries! I'm more than happy to help contribute - this is a really cool tool/project. I think I needed to update the firmware/image on the X300/N310 to match the libuhd version used by the 5ghoul container, but I didn't have any issues hopping between versions.
My coworker and I have noticed that the TX/RX for RF A and RF B will stop transmitting without producing any errors/warnings, so, I will look into this and let y'all know what I find. @purvajoshi1 after editing the cpp file did you rebuild OAI? If you restart/stop the docker without committing the changes, you will have to do it again at every startup of the container. Otherwise, I would double check your interface setup with the N310 as well. When the base station process would repeatedly stop for us, it was because of UNDER/OVERFLOW errors and it just couldn't see the USRP; use the following cmd to narrow down the problem... edit: corrected the "type" used for the cmd - n3xx, not x300 |
Hi @micahflack @Matheus-Garbelini : Many thanks for your response. For more details, I attached the screenshots here. The issue is that the fuzzer stops at some point and when I start GUI, I do not have anything in the TX RX session. I changed the usrp.cpp file, I changed the SDR_ADDR and also changed the configuration file. Still, I am not able to solve the issue. Kindly look and help me. Email address: purva.joshi@phd.unipi.it |
I have an X310 here with 10Gb connections and I just got new programmable sims in. Probably a perfect time to follow the discussion above and try to replicate. |
Hi,
I have gone through the details and I have USRP N310 with Ubuntu 18.04. I want to ask If I need to change any configuration files or if I should continue with the given source files. Hope to hear back from you soon. Thank you.
Best,
Purva Joshi
The text was updated successfully, but these errors were encountered: