On Sun, 17 May 2026 18:30:27 +0100 Rodrigo Alencar <[email protected]> wrote:
> On 26/05/17 03:58PM, Jonathan Cameron wrote: > > On Fri, 08 May 2026 18:00:25 +0100 > > Rodrigo Alencar via B4 Relay > > <[email protected]> wrote: > > > > > From: Rodrigo Alencar <[email protected]> > > > > > > Add custom ABI documentation file for the DDS AD9910 with sysfs entries to > > > control Parallel Port, Digital Ramp Generator and OSK parameters. > > > > > > Signed-off-by: Rodrigo Alencar <[email protected]> > > I'm fine with phase and frequency as defined, but for the scaling it made > > me wonder. > > For outvoltage0 channels the assumption the value is the peak voltage so if > > we know what input to be modulated by the ramp generator can we express them > > in volts (well milivolts) rather than as a scaling multiplier? > > The DAC output is current-based and differential. Voltage conversion would > happen > outside the device... Why aren't we representing this as out_altcurrentX-Y_xxxx? > using a resistor load or an op-amp transimpedance stage, > and I am no expert on that, but that often requires impedance matching so > voltage > levels may depend on the frequency. Then, I suppose that voltage is not the > right > unit to use. Understood that it can get complex! > > The scale here controls the amplitude of the varying signal. Assuming the > peak voltage > (amplitude) is constant means we have a constant envelope, but that should > not mean > we can't control it or it should not mean that the hardware can have other > ways to > control it. That said, scale behaves as a "gain multiplier". Understood. Given it's the envelope then if scale happened to be 1 always it would be presented as _processed. So this is consistent with other channel types. > > > > > That seems to me like it fits better with the overall ABI. > > > > > +What: > > > /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale_offset > > > +KernelVersion: > > > +Contact: [email protected] > > > +Description: > > > + For a channel that allows amplitude control through buffers, > > > this > > > + represents the value for a base amplitude scale. The actual > > > output > > > + amplitude scale is a result with the sum of this value. > > > + > > > > > + > > > +What: > > > /sys/bus/iio/devices/iio:deviceX/out_altvoltageY_scale_roc > > > > Silly question perhaps but can work out how this related to millivolts/sec > > That might make a more intuitive interface than scaling multiplier per sec > > Perhaps the combination with offset makes this impossible though maybe that > > could be a expressed as a voltage offset? Afterall if the amplitude being > > scaled is 5V then 5 * (offset + scale) = 5 * offset + 5 * scale > > > > > +KernelVersion: > > > +Contact: [email protected] > > > +Description: > > > + Amplitude scale rate of change in 1/s for channels that ramp > > > + amplitude. This value may be influenced by the channel's > > > + sampling_frequency setting. > > > > >

