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.  
> > 
> >   
> 


Reply via email to