[USRP-users] RuntimeError: Could not create nirio_zero_copy transport on X310

Marius metallheart_18 at yahoo.com
Tue Oct 20 10:11:32 EDT 2015


I get the fallowing error when I run my flowchart on the X310 USRP, :
thread[thread-per-block[3]: <block gr uhd usrp sink (1)>]: RuntimeError: Could not create nirio_zero_copy transport. A parameter to a function was not valid. This could be a NULL pointer, a bad value, etc. (Error code -52005)

My program initialises the time from the GPSDO with the fallowing command:
            self.uhd_usrp_sink_0.set_time_next_pps(uhd.time_spec_t(self.uhd_usrp_sink_0.get_mboard_sensor("gps_time").to_int() + 1))

and then starts transmitting and certain moments between a start time and a stop time. For that I use the fallowing algorithm:
    while start_time < stopTime:
        tb.uhd_usrp_sink_0.set_start_time(uhd.time_spec_t(start_time))                #tb is the object, instance of the class top_block
        time_difference = int(start_time - tb.uhd_usrp_sink_0.get_time_now().get_real_seconds())
        print “the transmission will start at", stringFromTime(start_time)          #stringFromTime is a function that converts timestamps in date.time
        time.sleep(time_difference + active_time) #active_time is the duration of the transmission
        print “finished transmission at", stringFromTime(tb.uhd_usrp_sink_0.get_time_now().get_real_seconds())
        start_time = int(tb.get_current_time() + wait_time) + 1                # wait_time is the duration between two transmissions

The error is outputted after the first transmission starts, and then repeated after every iteration in the while loop, but the signal is outputted only once.
The same code runs perfectly on  USRP N210.
I use the latest uhd version 003.010.git-65-g9117fdc9 with LFTX daughterboard and i use PCIe to connect to the USRP. The error was also present at  previous uhd version 3.8.4
Do you have any idea what is wrong?

More information about the USRP-users mailing list