Recent experiments in our lab have led us to characterize the Rabi frequency of our trapped ion qubit as a function of the amplitude that we set on our Urukul 9910 DDS via Artiq. The amplitude is set via the .set() command, and Rabi frequencies are calibrated using simple Rabi flops. The result is:

It seems like there is a highly non-linear response. More characterization found that the amplitude of the DDS output follows a similar response function (measuring the output on a scope as a function of the set amplitude):

What I would have expected is a (somewhat) linear response. Is what we measured normal, is this a bug, or are we using the Urukul improperly?