-
Posts
6,461 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Gallery
Everything posted by attila
-
Hi @Eyal Doron Such or even higher difference is expected between devices having separate own oscillator. Like here I measure 601.6ns (100* for 500kHz) over 100ms which is only 6ppm between Analog Discovery 2 (using DSC1101) and Digital Discovery (DSC1033CC1) https://digilent.com/reference/test-and-measurement/analog-discovery-2/reference-manual#clock_generator Edit: In your experiment you have <1ppm = 18/360/500k / (2^20/10M) Crystal oscillators have around 10-100ppm frequency tolerance. Edit: After the devices heated up it fall to 4.7ppm
-
2 channel Analog Record with Trigger from DIO pin on AD2 Python
attila replied to UwerusCodus's question in Test and Measurement
Hi @UwerusCodus The protocols use digital-out and digital-in device resources. The SPI/I2C can't be used at the same time with digital-out/in functions only sequentially. You are using these in succession so it should work but try to call FDwfDigitalInReset before configuring the digital-in to reset the earlier settings applied with SPI functions. See the configuration info in WF app or using the Device_Enumeration.py or the available device buffers programmatically with the FDwf*Info functions after Open. With configuration index 1 and 2 (2nd and 3rd) the Patterns/Protocol/digital-out is not available. -
Hi @Chazzo You could stream/record at up to about 1-2MHz or for slower signals see the AnalogIn_ShiftScreen.py example.
-
Is there a Digilent Cable Driver for Win11 on ARM
attila replied to Peter0201's question in Test and Measurement
Hi @Peter0201 You could try to install the driver from online updates (Windows Device Manager Update Driver) or manually from: C:\Program Files(?)\Digilent\Runtime\UsbDriver\ or the following: https://ftdichip.com/drivers/d2xx-drivers/ https://ftdichip.com/wp-content/uploads/2021/08/CDM212364_Setup.zip -
-
i3c I3C Decoding in Waveforms Logic Analyzer
attila replied to TheTenRing's question in Test and Measurement
Hi @TheTenRing I3C is not yet supported. -
Hi @Chazzo I've just tested this with python 2 and 3, and it is working for me. Please try it again: Device_Enumeration.py
-
Hi @CJS I2C slave is not yet available but it is under development.
-
WaveForms - Sample Rate of Imported Binary Logic Files
attila replied to LostMyPen's question in Test and Measurement
Hi @LostMyPen The next software version will have Rate option for import binary file. Thank you for your post. -
Hi @Chazzo What do you mean by "not compatible"? This is Device_Enumeration.py example with: dwf.FDwfEnum(c_int(enumfilterType.value|enumfilterDemo.value), byref(cDevice)) #only USB devices
-
Hi @Chazzo It is available in the latest beta version: You can safely use beta versions since things are rarely broken in these. Beside new features beta versions also bring fixes. The official releases are about twice a year, these are more thoroughly tested.
-
2 channel Analog Record with Trigger from DIO pin on AD2 Python
attila replied to UwerusCodus's question in Test and Measurement
Hi @UwerusCodus 1. Yes, 1/device 2. Yes but for such simple falling edge the trigger IO can be used as well: dwf.FDwfAnalogInTriggerSourceSet(hdwf, trigsrcExternal1) dwf.FDwfAnalogInTriggerConditionSet(hdwf, DwfTriggerSlopeFall) 3. No. The position for analog-in samples should be done with FDwfAnalogInTriggerPositionSet 4. Once configured it will work and it can be reset/reconfigured using dwf.FDwfDigitalInConfigure(hdwf, 1, 5. Each channel has its own buffer. See the PDF manual in the WF SDK folder. -
Hi @Chazzo The demo is not too sophisticated, it does not support triggering and other special features, only the configured analog/digital outputs are simulated on the inputs. dwf.FDwfEnum(c_int(enumfilterType.value|enumfilterDemo.value), byref(cDevice)) You could also use enumfilterAudio which provides more than the demo. Use FDwfEnumUserName, DeviceName... to see which devices are listed. dwf.FDwfDeviceOpen(X, byref(hdwf)) X 0 is the first device See the examples in the WF SDK/ samples/ py
-
-
Make sure your Analog Discovery is actually grounded
attila replied to miketranch's question in Test and Measurement
Hi @miketranch True, the ground should be the first connected and the last disconnected. We learn this often by mistake... I don't think ESD damaged the device since this is part of the EMC certification test. I've heard that some high voltage piezo transducers could damage this switch. -
Electronics Explorer Board - How to use it without the software
attila replied to Aria's question in Test and Measurement
Hi @Aria No. The device can only be configured by software. -
Hi @ssm The delay should be at least, prefill = MAX(0, TriggerPosition - NoSamples/SampleRate/2) For precise measurements to prevent temperature drift, if your application opens and closes the device often or you start this app often, use run or stop as initialization before open. The default shutdown will reduce power consumption app exit or device close but cause slight temperature drift. dwf.FDwfParamSet(DwfParamOnClose, c_int(0)) # 0 = run, 1 = stop, 2 = shutdown The first open or offset change should wait 1-2 seconds for these to stabilize, or 10-20 minutes to reach stable operation temp.
-
-
Hi @ssm The transition triggering is more complex. It requires specifying the TriggerChannel, Level, Hysteresis, Condition, Length, LengthCondition You could simply make the Scope trigger on Wavegen like this: FDwfAnalogInTriggerSourceSet(hdwf, trigsrcAnalogOut1) # trigger on analog-out 1 start FDwfAnalogInTriggerPositionSet(hdwf, NoSamples/SampleRate/2) # T0 on left, trigger the first sample ... FDwfAnalogInConfigure(hdwf, 0, 1); make sure the analog-in as suffice time for prefill/pretrigger before analog-out is started, use software sleep or AnalogOutWait FDwfAnalogOutConfigure(hdwf, 0, 1);
-
Hi @nt_ste Only SPI and I2C Spy were added to the WF application interface and SDK. See the WF SDK/ samples/ py/ Digital_Spi_Spy.py Digital_I2c_Spy.py
-
Hi @maculata Thank you for the feedback.
-
AnalogIn triggered by WaveGen (revisited)
attila replied to eivind_k's question in Test and Measurement
Hi @eivind_k See WF SDK: AnalogOut_Phase.py Use the following: dwf.FDwfDeviceOpen... dwf.FDwfDeviceAutoConfigureSet(hdwf, c_int(0)) # 0 = the device will be configured only when calling FDwf###Configure ... initial settings ... dwf.FDwfAnalogOutConfigure(hdwf, channel, c_int(1)) # 1 = start Wavegen channel ... dwf.FDwfAnalogOutNodeFrequencySet(hdwf, channel, AnalogOutNodeCarrier, c_double(hz)) # and/or dwf.FDwfAnalogOutNodeAmplitudeSet(hdwf, channel, AnalogOutNodeCarrier, c_double(vAmp)) # and/or dwf.FDwfAnalogOutNodeOffsetSet(hdwf, channel, AnalogOutNodeCarrier, c_double(vOff)) # and/or .. dwf.FDwfAnalogOutConfigure(hdwf, channel, c_int(3)) # 3 = apply new settings on Wavegen channel ... -
Hi @Chazzo The Reference channel time base and position can be adjusted under the channel's gear dropdown. The Math, measurements, XY... will be performed on interpolated reference samples.
-
Hi @maculata The Qt 5.12 supports the system color themes but it may block after sleep. Qt 5.9 does not support system theme and it looks like it does not block. I'm unable to reproduce this app blocking with any version. In this build only the dwf framework (SDK) supports M1 natively. The application is still for Intel. To have native M1 app it will require Qt 6 but this needs significant code changes. To measure the capture rate: - In the application you could set the Buffers like to 1000, set Base to very low, Trigger None, under Time Options set Update to Fastest, Run for a while and compare the time stamp of first and last buffer. The drawing also take time so if the Scope tab is not selected it will be faster. - Under app Settings Options Device you can find a Speed Test button. - With the SDK you can use AnalogIn_Wps.py script. As far I've read we don't have to care about the reported virtual memory.