JColvin

Administrators
  • Content Count

    2868
  • Joined

  • Last visited

  • Days Won

    81

Everything posted by JColvin

  1. Hi @jn74, As a bit of additional information, it may be worth it to first load the factory calibration first and leave the scope inputs open/short them to ground before stating the oscilloscope or scope meter as mentioned in this thread here. Thanks, JColvin
  2. Hi @Yacov Cohen, The way you would do this would be to change the ReadRegisterValue and SetRegisterValue functions so that the final parameter in each of those functions (a manipulate CS parameter) be set to 0 rather than 1. This would force you to manually toggle the CS pin yourself which you then have more control over. What I would probably do instead is change the begin function to then accept a parameter that ends up dictating what pin the CS pin is; you'll then be able to keep all of the other functions that use the Read / Set RegisterValue functions as is since it would automatically toggle the CS pin for you. Generically the adjusted begin function would look like this: bool AD7193::begin(int newCsPin) { SPI.begin(); SPI.setDataMode(SPI_MODE3); SPI.setClockDivider(SPI_CLOCK_DIV16); AD7193_CS_PIN = newCsPin; pinMode(AD7193_CS_PIN, OUTPUT); delay(100); Reset(); } Naturally you'll also need to change the begin function in the .h file to reflect this new parameter. Thanks, JColvin
  3. A customer on our website asked the following question: Dear Digilent Support, I have an Analog Discovery 2 (Serial Number DA19B31 on the bottom), but I can no longer connect it to my PC (windows 7, 64 bits) with Waveform 2 (2015).I was working on a FDTI chip of my circuit board, and I think I have erased the FDTI chip on the Analog Discovery 2 by my mistake.I'd like to re-configure the FDTI chip by using FDTI FT Prog. Could you inform me of the configuration?Or, Shold I send my Analog Discovery 2 to Digilent? ========================================There is no device found by Wave forms 2 (2015).But my Analog Discovery 2 is recognized as COM 7 by the windows device manager.========================================Thank you in advance.Best regards, The response is below.
  4. JColvin

    Analog Discovery 2 FTDI chip erased?

    Hi @tadashi, For the Analog Discovery 2, you can reprogram it's EEPROM directly from WaveForms. You will need to click the "My device is not listed" button in the device manager and a GUI will come up with instructions on how to reprogram it. Thanks, JColvin
  5. Hi @Yacov Cohen, This is my most updated code set (the code is currently reading channel 2), though I am still trying to debug an issue. The issue I am experiencing is that upon starting the code the module seems to work correctly; i.e. the calibrate function calibrates the channel of interest and the first sample seems to accurately reflect the provided input (though not with as much accuracy I would expect). However, any further samples taken do not reflect any changes and so far I have been unable to figure out why this is the case. The immediate thought would be that it's reporting an unchanging variable, but the code is setup so that it's a local variable that gets constructed, updated, reported, and then deconstructed each time through the loop, so that seems unlikely. I'll keep looking on another day when I have a can have a fresh look at the system. Thanks, JColvin AD7193.cpp AD7193.h PsuedoDifferential.ino
  6. JColvin

    LV2014 Home bundle and DAQmx

    Hi @Ilkka, Based on this thread I believe the LabVIEW Home Edition (2014) is compatible with the DAQmx drivers, though I haven't personally installed them to vouch for this. Let me know if you have any questions about this. Thanks, JColvin
  7. JColvin

    Zybo-Z7 Serial Port not working

    Hi @rmd91, An easy way to tell which Zybo board you have is based on whether not it has a VGA port. If it does, it's the original Zybo. If not and it has 2 HDMI ports it should be the Zybo Z7-10. Thanks, JColvin
  8. JColvin

    FPGA arty A7 development board

    Hi @suma, I would recommend checking out this thread specifically in the comment I linked. I'm not certain what you are planning to do with regards to "using the SPI flash memory", i.e. just load the project into flash (which is what the thread I linked does) or manipulate the flash while the program is running. I don't believe we have any example that manipulates the flash using tcl scripts though. Let me know if you have any questions. Thanks, JColvin
  9. JColvin

    Long range wireless communication between two FPGA board

    Hi @SUDIP_NIT_KKR, Unfortunately we do not have any module that specifically transmits audio data wirelessly. What you would need to do is find a way to establish communication between two devices through WiFi, Bluetooth, RF, or something similar and then set up a protocol for the two devices to talk to each other. We don't have anything specific for audio, but there are some examples for bluetooth on these threads here and here. Thanks, JColvin
  10. Hi @Shahab Ahmed, Unfortunately, I do not believe there are any ready demos that use the WF32 WiFi chip and MPLAB X, aside from some examples from this thread, though it sounds like you have some material already. Otherwise I would recommend checking out this thread that also has a link to an Instructable tutorial that should be helpful. Thanks, JColvin
  11. JColvin

    Dmc60 not giving output when load is connected.

    Hi @Joysondsouza253@gmail.com, If you could provide the link to the video that would be appreciated so that way I can make sure I am not misunderstanding what you are describing. How are the two DMC60's connected? Are they connected in serial or in parallel? Do both DMC60s work by themselves? I ask because you describe that one of the DMC60s was not working when two of them are connected together. In terms of the LED pattern blinking, it seems when the load is connected the fault indicated is that there is an over temperature and under voltage error. How are you powering your DMC60's? Thank you, JColvin
  12. Hi @Yacov Cohen, In this post and the one immediately following you are not using the .ino file that you claimed since you are receiving the "ERROR - Invalid Averaging setting"; the new file would have changed the value provided from 100 to 0x3. (Plus you say that you are using Anne's files, so it's a bit confusing what is actually being done). Based on the images attached to those two posts (not the one where you switch back to Anne's files) you appear to also be sometimes applying voltages to A3 and A4 rather than a voltage of 0.56V (how are you generating this?) to A6 and another wire to ACOM. What are you providing to ACOM? I am working on testing this to see if I can get it working since I am otherwise receiving similar data (at least with the register read values and the Channel 6 data measurement). I will let you know if I find something helpful. Thank you for your patience, JColvin
  13. JColvin

    Adept SDK for MacOS?

    Hi @algae, I asked our design engineer who is the most familiar with Adept SDK, but unfortunately they let me know that the Adept SDK base code is not available and it's not likely that it will ever be published. I'm sorry I could not be of more help. Thanks, JColvin
  14. Hi @Khoi Ly, If you are wanting to view both the MOSI and MISO data lines, it is my understanding that you will need to create two separate SPI channels in the logic analyzers, with the data set to MOSI and the other set to MISO. If you have a separate data ready pin, you would want to create a separate input for it; you can then have the logic analyzer acquistion be triggered off of it whether you choose to attach the data ready pin to one of the external triggers or be one of the digital inputs. I don't know what device you are interacting with so I can't speak much towards the reset, but presuming it is a active low reset for the external device I would probably tie the pin to a logic high state/use a pull-up resistor. Thanks, JColvin
  15. JColvin

    LabVIEW issue with Discovery 2

    Hi @Tonym, I loaded up the LabForms VI on LabVIEW 2014 and was in general able to successfully run it as advertised from the Instructable I linked before, and I was able to adjust the timebase on the Waveform Generator, but it does have it's own set of caveats. What I ended up doing was going to the block diagram and double clicking on the two Simulate Signal Express VI's that are towards the bottom middle of the block diagram. There you can change the Samples per second and the Number of Samples (will currently have the automatic box ticked and be set at 100000); with the default configuration of 250 MHz and 100000 samples, this leads to a total time of 0.0004 seconds, which is what you see on the WaveGen graph. You can untick the automatic box and increase the samples, but you will likely be encountered with an error that says the system may not perform as you expect; be sure to the click the "Use Anyway" button rather than the reconfigure. When I first clicked reconfigure, an error kept popping up saying the system couldn't run (or something similar) every time I closed the error, effectively softlocking me out of LabVIEW and forcing me to use the task manager to shut down LabVIEW. The "use-anyway" option let me run the VI and did work as expected, but as I was warned by LabVIEW, the system definitely did slow down when the VI was running. You can slow down the sample rate from 250 MHz, though I don't know how much that will impact your intended application (especially at higher frequencies). So not an AD2 problem per se, but more of a limitation with what sort of configurations have been implemented into the VI's (since the VI's just call existing WaveForms SDK functions). Thanks, JColvin
  16. JColvin

    CMod A7 Datasheet Warning

    Hi @Eric Raymond, With regards to the first question, I would say it's best to go both ways (not plug into a powered Cmod and not power a plugged in Cmod), since you are relying on a single diode to prevent any back-powering problems that could arise (as opposed to a jumper setting to choose your power source). You may be able to just remove the D1 and have it work out, though I don't know all of the ramifications with regards to powering the FTDI chip. You would also need to make sure any grounding between the input to the USB and the external power are connected to prevent voltage differences and issues there. However, if you are just wanting to power and have the Cmod A7 run a dedicated project, you can always load the flash on the Cmod A7 and every time the Cmod A7 is powered on it will automatically load the flash project. There are a couple of tutorials on this for the Cmod A7 Resource Center. The schematic page for the FTDI chip (the "This page intentionally left blank" one) is proprietary. You can send an email to support dot digilent at ni dot com to request these details though. We have a 3D model (.stp) for the Cmod A7 available on it's Resource Center on the right-hand side labeled as 3D STEP with a file name of cmod_a7.zip. There are some more dimensions about the Cmod A7 available on this thread as well. Let me know if you have any questions. Thanks, JColvin
  17. Hi @stef, Could you post your WaveForms project and script that you are using? I'm not certain what all of the time bases are on the logic analyzer screenshots and when each of your patterns are triggered. I'm not certain what you are thinking by your statement of "Maybe it's not possible to write and read this DIO's at the same time", but in general you would not want to assign the same wire to be both an input and an output simultaneously, you would instead want the output wire (from the pattern generator) to go a different wire as a logic analyzer input, but again I'm not certain of your physical setup. Could you attach a picture of your setup? Thanks, JColvin
  18. Hi @Yacov Cohen, Can you explain more what you mean by "not working"? Thanks, JColvin
  19. Hi @Yacov Cohen, Did you use the new .ino file that I had posted earlier? It adjusts the appropriate functions to match the new style of function (which requires a boolean parameter in the interest of making it so that you can enable or disable a bit in the device); I've adjusted the .h file so that it presumes a default parameter of true (which is what you would presumably do when calling the function anyway. Thanks, JColvin AD7193.h
  20. Hi @Yacov Cohen, Apparently I can't even select the correct library files; after double checking, these are the correct library files (as opposed to previous ones). I'll update the previous post as well to help prevent confusion. I when I ran it on an Arduino Uno (rather than a Digilent uC32), I didn't get the registers to read back as expected, so I'll need to double check the SPI functions used since I remember some of them use manual CS line manipulation and others do it via the library functions. Thanks, JColvin AD7193.cpp AD7193.h
  21. JColvin

    LabVIEW and Digilent Discovery 2

    Hi @Tonym, I responded to your other thread here. Thanks, JColvin
  22. JColvin

    LabVIEW issue with Discovery 2

    Hi @Tonym, The people who designed the AD2 to LabVIEW toolkit are no longer at Digilent so we do not have a local resident expert in that sense. What version of LabVIEW are you using; my understanding is that the toolkit and VI's were only designed for LabVIEW 2014 and LabVIEW 2016. Additionally, have you gotten the chance to follow this setup with LabForms? Thanks, JColvin
  23. JColvin

    JTAG-SMT2 Programming Module

    Hi @mortuzahasan, I apologize for the delay; if you are already have the test signals being generated through 4 wires from the external JTAG dongle, you might want to look at the Pmod LVLSHFT since that can receive the four signals through wires and then have them sent out to a Xilinx styled JTAG header. Admittedly, I am a little confused at what you are hoping to accomplish though since the diagram you provided shows the flow going back through the JTAG SMT2 which I believe already has the USB header and is integrated into your FPGA system. Are you wanting to have two separate programming routes to two different locations on the final board or two different inputs to the same output? I've tried to illustrate what I mean below: Two separate programming routes: JTAG SMT2 --> Xilinx FPGA spot 1 External dongle --> JTAG HS2 --> Xilinx FPGA spot 2 Branched input to single location: JTAG SMT2 ---------------> Xilinx FPGA ^ External dongle --> JTAG HS2 -->^ Or was the illustration you gave with the HS2 talking to the JTAG SMT2 accurate? The HS2 and SMT2 are both designed to take the datastream over USB and convert it to a usable data format for the Xilinx FPGA; I don't believe either of them will just let pre-made signals pass through. Thanks, JColvin
  24. JColvin

    PMOD AD5 external reference voltage of 3.3V

    Hi @irfiee, I updated the libraries a bit more since the registers were not being manipulated correctly; I have attached the relevant library files and sketch for it as well. Thanks, JColvin AD7193_VoltageMeasurePsuedoDifferential_Example.ino AD7193.h AD7193.cpp
  25. Hi @Yacov Cohen, I have attached the new files that I worked on; I believe the registers are all correctly manipulated now, though I changed a couple of functions to have them make more sense (like adding a boolean parameter for whether or not the pseudo bit is enabled. Let me know how it goes. Thanks, JColvin AD7193_VoltageMeasurePsuedoDifferential_Example.ino AD7193.h AD7193.cpp