Search the Community

Showing results for tags 'Analog Discovery'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • News
    • New Users Introduction
    • Announcements
  • Digilent Technical Forums
    • FPGA
    • Digilent Microcontroller Boards
    • Non-Digilent Microcontrollers
    • Add-on Boards
    • Scopes & Instruments
    • LabVIEW
    • FRC
    • Other
  • General Discussion
    • Project Vault
    • Learn
    • Suggestions & Feedback
    • Buy, Sell, Trade
    • Sales Questions
    • Off Topic
    • Educators
    • Technical Based Off-Topic Discussions

Find results in...

Find results that contain...

Date Created

  • Start


Last Updated

  • Start


Filter by number of...


  • Start





Website URL







Found 113 results

  1. Anyone can use Digilent Analog Discovery 1Gen with LabVIEW build .exe files we have update this free project with english language(2016.1.7) Demo Video Update2016.1.25 ———————————————————————— If you have a digilent Digilent Analog Discovery 1gen,and you want use a LabVIEW sytle program with Digilent Analog Discovery 1Gen. Great Now,you can download a LabVIEW build .exe file, Please flow me~~~ —————————— Step 2: Install Digilent Waveform 2.7.5 install Digilent Waveform 2.7.5 (download update 2017.6.24) 链接(link): 密码(pass):ji3a —————————— Step 3: Install LabVIEW 2015 Run-time Download LabVIEW 2015 Run-time blew —————————— Step 4: Download HLS.exe (AD_UN) Use HLS to measure your Lab.Have a great day Download HLS.exe link:(release updated 2016.1.7) password:z6kz —————————— ok,make pin connect like that。 * this .exe file is a free project,but user must submit your device(Analog Discovery 1) sn if anyone has any error message about this .exe Project ,you can send email to Thanks All
  2. I've been experimenting with a Analog Discovery system controlled via Python and have determined how to generate a digital signal out, however I have not been able to have the signal change frequency or duty cycle mid run. I have tried just use the function that controls duty cycle a second time however that just seems to overwrite the first. Below is the python code I have been using, any guidance would be much appreciated. -ZG """ DWF Python Example Edit ZG Requires: Python 2.7, numpy python-dateutil, pyparsing """ from ctypes import * from dwfconstants import * import math import time import sys if sys.platform.startswith("win"): dwf = cdll.dwf elif sys.platform.startswith("darwin"): dwf = cdll.LoadLibrary("/Library/Frameworks/dwf.framework/dwf") else: dwf = cdll.LoadLibrary("") #declare ctype variables hdwf = c_int() sts = c_byte() #print DWF version version = create_string_buffer(16) dwf.FDwfGetVersion(version) print "DWF Version: "+version.value #open device print "Opening first device" dwf.FDwfDeviceOpen(c_int(-1), byref(hdwf)) if hdwf.value == hdwfNone.value: print "failed to open device" quit() hzSys = c_double() dwf.FDwfDigitalOutInternalClockInfo(hdwf, byref(hzSys)) # 1kHz pulse on IO pin 1 dwf.FDwfDigitalOutEnableSet(hdwf, c_int(1), c_int(1)) # prescaler to 2kHz, SystemFrequency/1kHz print "hzSys", hzSys.value dwf.FDwfDigitalOutDividerSet(hdwf, c_int(1), c_int(int(hzSys.value/1e3))) print "frequency:", hzSys.value/1e3/2/100 # 1 tick low, 1 tick high dwf.FDwfDigitalOutCounterSet(hdwf, c_int(1), c_int(4), c_int(6)) # 1kHz pulse on IO pin 1 # prescaler to 2kHz, SystemFrequency/1kHz print "hzSys", hzSys.value dwf.FDwfDigitalOutDividerSet(hdwf, c_int(1), c_int(int(hzSys.value/1e3))) print "frequency:", hzSys.value/1e3/2/100 # 1 tick low, 1 tick high dwf.FDwfDigitalOutCounterSet(hdwf, c_int(1), c_int(6), c_int(4)) # rgdSamples = (c_byte*4)(*[0x00,0xAA,0x66,0xFF]) # # 1kHz sample rate custom on IO pin 3 # dwf.FDwfDigitalOutEnableSet(hdwf, c_int(3), 1) # dwf.FDwfDigitalOutTypeSet(hdwf, c_int(3), DwfDigitalOutTypeCustom) # dwf.FDwfDigitalOutDividerSet(hdwf, c_int(3), c_int(int(hzSys.value/1e3))) # dwf.FDwfDigitalOutDataSet(hdwf, c_int(3), byref(rgdSamples), c_int(4*8)) dwf.FDwfDigitalOutConfigure(hdwf, c_int(1)) sleepTime = 10 print "Generating output counter for %s seconds..."%sleepTime time.sleep(sleepTime) dwf.FDwfDigitalOutReset(hdwf); dwf.FDwfDeviceCloseAll()
  3. I am trying to download Waveforms 2.9.4. I am logged in to When I right click on the blue Windows icon and click Save As, I get a message "... couldn't be downloaded". I am using Windows 7 and IE11. Yes, I am trying to download the legacy version, I do prefer it. Any ideas as to what I am doing wrong?
  4. Hi, I am using an analog discovery to record relay trips. The goal is to record voltage a set time before the trigger and a set time after the trigger. i am writing the average and time to an array and saving the array to a csv file once the after trigger is complete. currently i am using the default script that comes with the program. it works and i get the information but the time stamp using Date() gives hh/mm/ss and i need smaller units of time. My question is: How can i get an accurate time stamp using the script? I need to maximize the number or samples i can take so i do not want a complicated solution i have already run into problems where the script (or usb) can not keep up with the sample rate of the analog discovery. any help would be awesome thanks!
  5. I'm using Analog Discovery 1 with Waveforms 2015 3.3.7 (64-bit) and trying to get the UART decoding to work for me. My serial settings in my test apparatus are 115200 baud, 1 start bit, 8 data bits, no parity, no stop bits. When I send 0x55 (01010101b), it appears to decode properly as shown in the image below: If I send 0xAA (10101010b). It gets confused about the start bit and the first data bit (i.e. two 1's right next to each other) as shown in the image below: I tried forcing the decoding to start at the appropriate place with the "Start UART from here" feature, but it won't let me do so before the first falling edge of the signal. This seems to have been discussed a little here: However, in that post all of the working examples have the UART signal high when not transmitting as if it were connected to a pull-up resistor. My apparataus has the UART signal low when not transmitting. Please advise how I can get proper decoding with the signals illustrated in the images above Thank you.
  6. Hi I want to record approx 50-1000 us long square wave signals from a separate waveform generator with Analog Discovery (Portable Analog Circuit Design Kit) via Matlab. The official Matlab code for recording with an Analog Discovery does not work ( Instead, the program is continuously busy when executing startForeground(s) and does not produce results. The official Matlab code for waveform generation and acquisition at the same time ( ) works but allows only for a lower sample rate and takes too long to start measuring for my experiment. Which is why I would prefer to only record rather than outputting zero and recording the actual target signal simultaneously. My Matlab code is s = daq.createSession('digilent'); ch = s.addAnalogInputChannel('ad1', 1, 'Voltage'); s.Rate = 1e6; s.Channels.Range = [-2.5 2.5]; s.DurationInSeconds = 2; [data, timestamps, triggerTime] = startForeground(s); figure plot(timestamps, data); xlabel('Time (seconds)') ylabel('Voltage (Volts)') title(['Clocked Data Triggered on: ' datestr(triggerTime)]) Additional Info: I use the 1+ and 1- pins of the Analog Discovery, the support package Digilent Analog Discovery 15.2.0 is installed, MATLAB version R2015b.
  7. Hi, I am trying to figure out how to use either ScanShift or ScanScreen acquisition mode for Digital Inputs into the Analog Discovery. And well, I can't get it to work, and haven't really been able to find any information online. My overall goal is to be able to stream out the digital data, so that I can capture and store more (continuous) data than the 16 kB buffer size. This doesn't have to run fast, I need to capture at 10,000 samples per second. The problem seems to be that the Digital In is staying in a "trigger" state. I am using Python, and using the function: dwf.FDwfDigitalInStatus(hdwf, c_int(1), byref(sts))always sets sts to c_int(3), which according to file (included in python samples folder with the SDK), this corresponds to stsTrig. Here is one version of the code I have been playing with, it is modified from the sample program (note I can switch to C, if that would be easier, I am not actually very familar with Python): """ DWF Python Example 5 Author: Digilent, Inc. Revision: 10/17/2013 Requires: Python 2.7, numpy, matplotlib python-dateutil, pyparsing """ from ctypes import * from dwfconstants import * import math import time #import matplotlib.pyplot as plt import sys #declare ctype variables if sys.platform.startswith("win"): dwf = cdll.dwf else: dwf = cdll.LoadLibrary("") hdwf = c_int() sts = c_byte() #print DWF version version = create_string_buffer(16) dwf.FDwfGetVersion(version) print "DWF Version: "+version.value #open device print "Opening first device" dwf.FDwfDeviceOpen(c_int(-1), byref(hdwf)) if hdwf.value == hdwfNone.value: print "failed to open device" quit() ofile = open("DigInTestData.txt", 'w') #open file in write mode print "File opened to write." ofile.truncate() # delete existing content print "Preparing to read sample..." # generate counter (Connecting these pins back to the inputs to test) for i in range(12, 16): dwf.FDwfDigitalOutEnableSet(hdwf, c_int(i), c_int(1)) #(dRef, chan, Enable(1)orDisable(0)) dwf.FDwfDigitalOutDividerSet(hdwf, c_int(i), c_int(33332*(1<<(i-12)))) #(dRef, chan, clock_divider) dwf.FDwfDigitalOutCounterSet(hdwf, c_int(i), c_int(1), c_int(1)) #(dRef,chan,clkcycs_low,clkcycs_high) dwf.FDwfDigitalOutConfigure(hdwf, c_int(1)) #(dRef, Enable(1)orDisable(0)) #ScanShift Mode dwf.FDwfDigitalInAcquisitionModeSet(hdwf, acqmodeScanShift) #TH:(dRef, acqmode) #sample rate = system frequency / divider, 100MHz/1 dwf.FDwfDigitalInDividerSet(hdwf, c_int(10000)) #TH: 1->10,000 #(dRef, clk_divider) # 16bit per sample format dwf.FDwfDigitalInSampleFormatSet(hdwf, c_int(8)) #(dRef, Format(8,16,or32)) # set number of sample to acquire cSamples = 1 rgwSamples = (c_uint8*cSamples)() #rgwSamples is a ?pointer? to a ctype array acting as a "buffer" dwf.FDwfDigitalInBufferSizeSet(hdwf, c_int(cSamples)) #(dRef,BufSize) duh... rgpy=[] #dwf.FDwfDigitalInTriggerAutoTimeoutSet(hdwf, c_double(0.2097152)) dwf.FDwfDigitalInConfigure(hdwf, c_bool(0), c_bool(1)) #(dRef,reconfig?,StartRec) while True: dwf.FDwfDigitalInStatus(hdwf, c_int(1), byref(sts)) #(dRef,ReadData(TorF), status_variable) print "STS VAL: " + str(sts.value) if (sts.value == stsTrig.value): #only changed to stsTrig so that it will escape this loop break time.sleep(1) print " waiting to finish" time.sleep(1) # begin acquisition for I in range(0,100): # get samples, byte size dwf.FDwfDigitalInStatusData(hdwf, rgwSamples, cSamples) #(dRf,point->databuffer,numOfDataBytes2Copy) rgpy.append(rgwSamples[0]) dwf.FDwfDeviceCloseAll() for num in rgpy: ofile.write(str(num)+'\n') for i in range(0,15): print(str(rgpy)) ## ##print() ##print(str(rgpy[0])) print "...written to." ofile.close() print "and closed." This just results in one value be stored in all 100 spots. An example of a shell output: DWF Version: 2.7.5 Opening first device File opened to write. Preparing to read sample... STS VAL: 3 waiting to finish 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 ...written to. and closed. Any help/advice anyone can give me would be greatly appreciated; I am really new to all of this.
  8. Hello there, I am using Analog Discovery 2 and WaveForms software. I was wondering either there is any way to export the scope view to pdf or eps format? Or any other vector graphics format. That would be great for papers. If there is no such feature, maybe developers would consider this option? I would appreciate all help.
  9. I would like to incorporate the Analog Discovery into a piece of equipment, but I cannot get it to work over a longer USB cable. In fact, sometimes I can't get it to work reliably over the short USB cable that is supplied with the device. I have tried all of the tricks suggested on the forum to no avail. I have also tried a powered USB hub. It appears that it will mostly only work with the cable supplied by Digilent. This makes the device functionally useless to me. I need to be able to separate the computer and the Analog Discovery by more than 18 inches. When I try to use a cable that is 45 inches, the Analog Discovery becomes unreliable and looses communications or fails to load at all. It appears that the Analog Discovery is not fully hardware compliant with USB 2.0. To be compliant, the Analog Discovery would be able to operate over the maximum specified cable length, which is up to 16 ft. Anything less than 16 ft is noncompliant. The message that is provided is not informative enough because these solutions seem to not reliably solve the problem of Analog Discovery USB 2.0 noncompliance. I am very disappointed with this nonconformance characteristic, because this little device is very powerful and very useful when it works. So, the problem is not that the cable needs to be shorter, it's that the Analog Discovery is not fully compliant with USB 2.0 hardware specifications. Since the hardware is noncompliant, is there a possible software solution that could render the Analog Discovery useful over longer cables? Something like a degraded performance bandwidth due to lower communications speed, or something like that? Thanks.
  10. Here is a summary of my issues, my Teacher's Assistant's response, and the results of further troubleshooting: --------------------- I am having trouble with what I would expect for some of the voltages in the H0-2 lab. I have successfully completed the first portion of the lab. Now I am attempting to measure the voltages with the voltmeter. I was connecting the + voltmeter end to the red power source and the -v end to the black ground. With the power supply on, the reading was about 2.76V. I thought this may be due to some resistance or bad wiring, so I directly connected the power supply to the 1+ voltmeter end and the ground to the 1- voltmeter end. I am still getting this reading. I have restarted and tried again, to no avail. Any suggestions as to why I am encountering this issue? **UPDATE**: I remembered I had another multimeter with me and it is telling me that the voltage difference is +4.99 volts. What is wrong with my ADK setup? I am using the newest version of Waveforms on Mac OSX. ---------------------- Answer from TA: 2.76V is very low. Please measure the voltage of the GND and make sure it is 0. If you have a AA battery at home, measure it's voltage and make sure it reads some number between 1.2 Volts and 1.5 Volts. Please also connect the AND gate chip (74LS08) to the VCC and GND, and measure the voltage of pin 3 after connecting pins 1 and 2 to the logic 1. Ideally you should get 3.3 Volts. Try to do this step with your other voltmeter. Let me know what you get. ---------------------- Further troubleshooting: Thank you for the suggestions. I think I know what is going on now, but I don't know why it's happening. The ADK shows a maximum voltage of 2.764V no matter what. Below are the measured voltages from the voltmeter and my multimeter: Battery #1: ADK Voltmeter: 1.588V Multimeter: 1.58V Battery #2: ADK Voltmeter: 1.586V Multimeter: 1.58V Battery #1 & #2 in series: ADK Voltmeter: 2.764V Multimeter: 3.16V +5V to ground: ADK Voltmeter: 2.764V Multimeter: 4.99V Pin 3 to ground (with power connected): ADK Voltmeter: 2.764V Multimeter: 3.27V Ground to ground (with power connected): ADK Voltmeter: 0.0009V Multimeter: 0V 5 - 1.5v batteries connected in series: ADK Voltmeter: 2.764V Multimeter: 6.8V It seems as if I cannot produce a voltage >2.764V with my Analog Discovery Voltmeter. Any other suggestions? Thanks for the help
  11. Hello! I have a system receiving a sine wave of one of the analog discovery waveform generator channels. The sine wave changes when crosses the system and at the end, the modified sine wave is read by the analog discovery scope channel. The original sine wave starts at t=t0s but the acquitision only starts at t=t1s. I need your help to try to read, simultaneously, both the modified sine wave and the original sine wave. sAnjo
  12. Hello, I am new to the Analog Discovery and WaveForm software, so this might be a "silly" question. I did try to run some scripts in WaveForm3,0 (The latest version). Right now, I am just running the example code coming with the tool. It is shown in the following, it gave errors, like Can't find variable: Wavegen1, etc. I believe I have to add a library which includes all the definitions of this variables, but I didn't find them. Can anyone help with me and show me how to get codes like this to run successfully? Thanks so much! function main(){ if(!('Wavegen1' in this) || !('Scope1' in this)) { throw("Please open a Scope and a Wavegen instrument"); }; for(var idx = 0; wait(1) && idx < 10; idx++){ Scope1.single(); if(!Scope1.wait()){ return; } var average = 0; var data =; data.forEach(function(sample){average += sample;}) average /= data.length; print(idx+" Average: "+average+" V"); } } main();
  13. Hi I have an analog discovery that has been working fine for the last 2 months. But yesterday i got the error message: The device needs at least 2W/400mA from USB Cable. I am running the Wave From 2015 app. Have tried it on both mac and windows (bootcamp on my mac), but got the same message. When im running diagnostic on my usb ports, I get the result that i have 1000mA available for use (with my analog discovery connected) Have tried changing the usb cable but no luck My analog discovery works on other computers Any tips?
  14. Hi, I have a question from a customer. Can anyone help? Would it be possible to do some simultaneous sampling with the analog discovery board with a sample rate of e.g. 500khz or is it time limited due the internal buffer length? Would it be possible for the ADC and DAC at the same time?
  15. I'm an electrochemist wondering if I can use the Analog Discovery to do impedance spectroscopy. I've ordered one to try out, but it hasn't arrived yet so I'm playing around with WaveForms 2015 software. I am no electrical engineer, so I have lots of questions. The normal settings we use in electrochemical impedance spectroscopy (eis) are as follows: Frequency range: 0.01-10,000Hz (1-10,000 probably ok), single sine wave to probe system: amplitude 10mV, use Nyquist (real/imag impedance) and Bode (freq vs impedance/ohm) plots to analyze the system. There are other settings such as wait time between frequencies, but I've found most of these in the WaveForms software. This type of test is usually used in corrosion analysis on coated and uncoated metals. Expensive programs use circuit modeling to extract system parameters, but you can also do analysis just looking at high or low frequency impedance. My question: is there a way to get WaveForms software to display Bode plots with impedance in ohms directly? Or at all?
  16. Which Breadboards fit to Analog Discovery 2? Do myDigital Protoboard for NI myDAQ & myRIO fit to AnalgDiscoverys connectors? Or to myProto Protoboard for NI myDAQ & myRIO ? Thanks for help! Andi
  17. Hi, I am trying to run the python script "", but cannot seem to load the dwf.dll. When I attempt to run the script in anaconda 2 or Idle (python 2.7.8), I get the following error: runfile('C:/Users/John/.spyder2/py/', wdir='C:/Users/John/.spyder2/py') Traceback (most recent call last): File "<ipython-input-8-4aa4827489b3>", line 1, in <module> runfile('C:/Users/John/.spyder2/py/', wdir='C:/Users/John/.spyder2/py') File "C:\Users\John\Anaconda2\lib\site-packages\spyderlib\widgets\externalshell\", line 685, in runfile execfile(filename, namespace) File "C:\Users\John\Anaconda2\lib\site-packages\spyderlib\widgets\externalshell\", line 71, in execfile exec(compile(scripttext, filename, 'exec'), glob, loc) File "C:/Users/John/.spyder2/py/", line 14, in <module> dwf = cdll.dwf File "C:\Users\John\Anaconda2\lib\ctypes\", line 435, in __getattr__ dll = self._dlltype(name) File "C:\Users\John\Anaconda2\lib\ctypes\", line 365, in __init__ self._handle = _dlopen(self._name, mode) WindowsError: [Error 126] The specified module could not be found I have copied the dwf.dll to my working directory with no luck. I am running windows 7, 64 bit. What is the best path forward to get this working? How is the Digilent Adept Runtime used? Thanks, John
  18. Hi, per my professor's requirement's, I bought The Analog Discovery (link here) which I believe interfaces with the original Waveforms software linked here: . I have a Mac running OS X and am worried these will not work with my system. Any help or guidance is greatly appreciated. Sean
  19. Hi, I have an Analog Discovery and installed Waveforms 2015 on OSX 10.10.5. When I start Waveforms I receive a "No device detected" error. However, if I am running Windows 7 in Parallels on the same machine and launch the Windows version of Waveforms 2015 then the device is detected just fine. I have installed the device driver for OSX. Does anyone have any suggestions? Thanks Bryon
  20. Hi! Is it possible to buy Analog Discovery in Europe (with academic discount)? When I tried to make an order via site it showed it was going to send it from the US. This greatly increases the total price (not to mention troubles with customs).
  21. Hi, I just purchased the adm kit. After installing the software, I've found that when I try to launch it, it appears in the task manager but no windows come up? I've tried reinstalling and restarting everything but nothing seems to help. I am running windows 10 and I downloaded the latest software for waveform. Any help would be great!
  22. I’ve just purchased the Analog Discovery 2 last week and everything works fine when using the Waveforms software. I am now trying to use the SDK to customize my own application by using your sample Python code as a starting point. I was able to run file and everything worked as expected. However, when I ran file, the power supply was not turned on. I used a multi-meter to measure the voltage at V+ and V- pins but they all stayed at zero volt. I also tried to modify the parameters in dwf.FDwfAnalogIOChannelNodeSet(hdwf, 0, 0, 1) function but the results were the same. Does the current SDK support all Analog Discovery 2 functions? Thanks.
  23. Hello, I have question regarding analog discovery. what is the frequency range of spectrum analyzer? Can it go down to 30Hz? if yes what is the Minimum Event Duration for 100% POI?
  24. is it possible to measure the power factor using analog discovery
  25. Analog Discovery: Measuring Transients The following question was posted on our Analog Discovery Quickstart Video: "How do you measure the transient in a circuit breaker using the Analog Discovery?" Thank you for your help, Studio Manager