attila

Technical Forum Moderator
  • Content Count

    1810
  • Joined

  • Last visited

  • Days Won

    112

Everything posted by attila

  1. Hi @bigred5613 The WF SDK (custom application or script) supports up to 64 devices the WF application has a wrongly set limit to 8. C:\Work\dwf\samples\py>python Device_Enumeration.py DWF Version: b'3.9.1' Number of Devices: 10 ------------------------------ Device 0 : Name:'b'Analog Discovery 2'' b'SN:210321A419AA' Configurations: 0. AnalogIn: 2 x 8192 AnalogOut: 2 x 4096 DigitalIn: 16 x 4096 DigitalOut: 16 x 1024 1. AnalogIn: 2 x 16384 AnalogOut: 2 x 1024 DigitalIn: 16 x 1024 DigitalOut: 0 x 0 2. AnalogIn: 2 x 2048 AnalogOut: 2 x 16384 DigitalIn: 0 x 0 DigitalOut: 0 x 0 3. AnalogIn: 2 x 512 AnalogOut: 2 x 256 DigitalIn: 16 x 16384 DigitalOut: 16 x 16384 4. AnalogIn: 2 x 8192 AnalogOut: 2 x 4096 DigitalIn: 16 x 4096 DigitalOut: 16 x 1024 5. AnalogIn: 2 x 8192 AnalogOut: 4 x 4096 DigitalIn: 16 x 2048 DigitalOut: 8 x 256 ------------------------------
  2. Hi @DCSoutherner Uninstall "Digilent Software" prior to installation.
  3. attila

    External trigger for the Digital Discovery

    Hi @bigred5613 You can configure pulse trigger by clicking the Pulse button in the Logic Analyzer.
  4. Hi @Khoi Ly Your SPI signal is active on rising edge, data bit changes on rising clock edge, so use in the Logic Analyzer sample on falling edge to interpret it correctly.
  5. Hi @WCL From an application you can't have precise timing. Under an OS (except with rtos) you can't have timing certainty... Use the Patterns to generate 50Hz clock.
  6. attila

    Buffer depth > 100k with Digital Discovery

    Hi @StevenBell Select the record mode to capture more samples.
  7. Hi @WCL For I2C you should use OD signals with pullup, like this:
  8. Hi @stef You are not seeing the 100ns RST pulse probably because you were capturing it with the Logic Analyzer at low rate (<=10MHz, >=100ns). (i don't see the rate in the screenshot) The sample rate should be higher that the pulse length. This is also true for the Read signal of 10MHz (50ns low, 50ns) high captured at 10MHz (100ns sampling)... You could use a Script like this to start Patterns 1 and 2 in quick (~10ms) sequence. Here you have the workspace: stef.dwf3work
  9. Hi @Khoi Ly Use the record mode to capture more data than the device buffer at a maximum rate of about 1MHz.
  10. attila

    interleaved PWM in WaveForms

    Hi @riccardo.tinivella@ntb.ch Are you thinking on a setup like this?
  11. Hi @BlueSky The noise samples are bit flags for each DIO/DIN indicating more than one transition between two sampling points. Each noise sample represent DIO/DIN bits [31...0] like the normal samples [31...0] Noise sample at T1 indicates noise flag between T0 and T1, noise T2 between T2 and T1,... In the WF app the noise bits are represented with gray strips.
  12. attila

    Digital Discovery Buffer size, Compression

    Hi @BlueSky 1. I wanted to say: 64M (2^26) refers to the default 32bit sampling, or 256MBytes for 8bit sampling, or 128MWords for 16bit sampling... 2. Yes.
  13. Hi @SHong The "sync" mode is enabled with: # for sync mode set divider to -1 dwf.FDwfDigitalInDividerSet(hdwf, c_int(-1)) In this mode the trigger event is used for sampling condition, like: # trigger detector mask: low & hight & ( rising | falling ) dwf.FDwfDigitalInTriggerSet(hdwf, c_int(0), c_int(0), c_int(1), c_int(0))
  14. attila

    Digital Discovery Buffer size, Compression

    Hi @BlueSky The 64M (2^26) refers to the default 32bit sampling, 64M*32 = 256Mbits
  15. Hi @WCL You were missing the pullups on I2C. Yes, only master is supported.
  16. Hi @BlueSky With DwfDigitalInSampleModeNoise use the FDwfDigitalInStatusNoise2 to retrieve the noise samples and FDwfDigitalInStatusData or FDwfDigitalInStatusData2 for the normal samples, like: while cSamples < nSamples: dwf.FDwfDigitalInStatus(hdwf, c_int(1), byref(sts)) dwf.FDwfDigitalInStatusRecord(hdwf, byref(cAvailable), byref(cLost), byref(cCorrupted)) cSamples += cLost.value if cSamples+cAvailable.value > nSamples : cAvailable = c_int(nSamples-cSamples) dwf.FDwfDigitalInStatusData2(hdwf, byref(rgdwSamples, 4*cSamples), c_int(0), c_int(4*cAvailable.value)) # 4* bytes for 32 bit sampling dwf.FDwfDigitalInStatusNoise2(hdwf, byref(rgdwNoise, 4*cSamples), c_int(0), c_int(4*cAvailable.value)) # 4* bytes for 32 bit sampling cSamples += cAvailable.value
  17. Hi @WCL The Protocol tool by default takes control over the Patterns (to generate signal UART TX; SPI SS, CLK, MOSI; I2C master) and the Logic Analyzer (to receive/read data UART RX; SPI read/MISO; I2C monitoring/read). You can debug the signals directly in the Logic Analyzer after enabling this mode in the top-right edge. For I2C you will need external pullups or for Digital Discovery enabled in the Supplies tool.
  18. attila

    Digital Discovery Buffer size, Compression

    Hi @BlueSky 1. The 64M info refers to the default 32bit setting. With 8bits you have 4x buffer, for 256M samples. 2. The compression is not supported by the Digital Discovery, only by EExplorer, Analog Discovery 1, 2
  19. Hi @SHong See the DigitalIn_Sync.py example in the WF SDK.
  20. attila

    AC coupling grayed out in dropdown

    Hi @Mettulski On AD2 BNC adapter the AC/DC coupling can be selected with jumpers behind the Scope BNC plugs.
  21. attila

    Analog Discovery 2 Hardware Issue

    Hi @jstwiddy Most probably the laptop can't provide suffice power to the device. You could try the AD2 with another laptop/computer, or powered USB hub, or external 5VDC power supply.
  22. Hi @Roland_W I will add such option. Thank you for the feedback.
  23. attila

    Error with enabling DIO channel

    Hi @Lakshmi Tejas M A I see you are using the 3rd party py/dwf I have installed this and the example is working for me with WF 3.8.11 and 3.9.1 Make sure to close WF app or other (custom) application that can keep the device busy. Only one application can be connected to a device at a time. C:\Users\#####>python DigitalOut_Pins.py DWF Version: 3.9.1 Opening first device Generating output counter for 10 seconds...
  24. attila

    Waveforms 3.9.1 metadata bugs

    Hi @gasstationwithoutpumps 1. The notes in export dialog are saved as it is. The header as comment only adds # to the header. Now I added notes as comment option. 2. Adding average, oversampling, attenuation, zero offset to export comments. 3. I was not expecting that such high values will be required. In the application the analog data is stored in 64-bit float where the fraction is 52 bits. The average maximum will be set in scope to 1e9 and in impedance/network analyzer to 1e6. Thank you for your observations.