JColvin

Administrators
  • Content Count

    2930
  • Joined

  • Last visited

  • Days Won

    85

Everything posted by JColvin

  1. Hi @kmesne, Let me see if I see if I can help clarify a few things. The good news is that there is not a wrong way to do your project, provided it meets all of the given requirements. However, there are certainly harder and easier ways to accomplish this project. As a general policy of the staff on the Digilent forum (which has been unofficially adopted by a number of our kind and helpful forum members that offer advice on their own free time) is that we don't actively complete homework assignments or semester projects for people because we believe that approach isn't truly helpful for anybody trying to learn (and it could be construed as cheating). I believe the folks over at reddit feel the same way based on what I saw. Naturally, this does not prevent you from looking to see if there are similar projects already existing online that you could use as a guideline for your own project, but realize there is no guarantee that what you find will work for your system; you will likely have to do a bit of work changing it to fit your requirements/needs. Based on what you have described both here and in other places, I would like to believe that there are some resources available at your institution that can help guide you in making the needed steps and design choices for your project, but you will know that answer best. On the other hand, if you have specific questions on how particular part of design might work and have done some due diligence on accomplishing this for yourself, we can likely give you some advice. Let me know if you have any questions. Thank you, JColvin
  2. Hi @suraj.mallik, Unfortunately, we have not used that particular library that you linked to so I do not have any immediate advice for that. What I can recommend is that you look at this thread for some additional information using the Pmod IA. Let me know if you have any questions about this. Thanks, JColvin
  3. Hi @joe3, If you have your notification settings (available by clicking your icon in the top right of the web page -> account settings -> notification settings (on the right hand side of account settings) to receive a "notification when new content is posted" then yes, you will receive a message in some way. Let us know if you have any questions about this. Thank you, JColvin
  4. Hi @dry, I'm not intending to take over this thread, but I'm hoping you could clarify which OS you were using. My confusion comes from this two statements: Which of those statements is accurate? Thanks, JColvin
  5. Hi @rzsmi, Could you clarify which getting started guide led you to believe that you could readily use MicroBlaze on a Zybo-Z7? We would like to be able to correct that language if it is on one of our tutorials; the IPI tutorial you linked to (from what I can tell) separates between the Zynq and Microblaze processes. Thank you, JColvin
  6. Hi @Kostas, Unfortunately, those of us here at Digilent do not have experience with the AD2 support package for the MATLAB Data Acquisition Toolbox as it is my understanding that MathWorks developed this independently. I would recommend contacting MathWorks for some additional information on this. Thank you, JColvin
  7. Hi @Denci, I don't have the same setup as you so I do not have a nice graph to show, but I was able to set up a Pmod MIC3 to have data collected to a host board, send the serialized data to a digital-to-analog converter (also 12bits just like the PmodMIC3) which then provides the analog output directly to an audio output module (such as a PmodAMP2). The host board I was using (a microcontroller) had limited storage capabilities so I was only able to store a limited amount of sound to memory before sending it to the audio output at various sampling rates (ranging from 13 kHz to 45 kHz, corresponding to delays between each sample of about 75 microseconds to 22 microseconds, respectively). Each sampling and output rate sounded noisy to me, but I am inclined to think my setup involving lots of jumper wires and cheap headphones on a breadboard didn't help very much. I don't know if the Pmod MIC3 microphone is limited to a 15 kHz frequency as much as the sensitivity goes up; since it continually produces an audio signal there is no real limitation on how often it is sampled. Regardless, I was able to reliably get a "click" response from snapping my fingers though (presuming I snapped while it was sampling rather than playing out audio data), though I do not know how the response looks on an oscilloscope. Let me know if you have any questions. Thanks, JColvin
  8. JColvin

    Scope in labview

    Hello @Dejvid, I don't believe the LabForms VI's implemented any of the FFT capabilities of the WaveForms software. Depending on how the data is collected, you may be able to use a VI from National Instruments to then perform an FFT on the data, but I haven't looked into this. Otherwise, if you happen to already have the Analog Discovery 2, I would recommend using the WaveForms software and the Spectrum Analyzer tool (link to more details) if that is an option to you. Thanks, JColvin
  9. Hi @zygot (and anybody else who is wondering), We didn't provide the circuitry details; we instead provided them the name of the appropriate Digilent contact to discuss licensing options of this circuitry. We'll try to be more transparent about this sort of thing in the future. Thank you, JColvin
  10. Hi @tfcb, I apologize for the delay; this is the material that I used for the Pmod ISNS20 with Digilent's uC32 and the Arduino IDE. I commented out the debugging material, so I would not consider this a formal release as of yet. Let me know if you have any questions. Thanks, JColvin
  11. As a member of the self-taught group, I will agree that it is possible to learn how to use a Zynq or any other board. However, you will absolutely run into the fact that that zygot put nicely where you will need: You can readily get an understanding of the basics, but you will also need (to loosely quote Dan) "an understanding of the formal methods" to both create and verify work. Otherwise you will run into the mentioned "I ran the demo, but tried to change one thing and now nothing works"; it's hard to know what you're doing if you don't know how it works. So is it possible to learn? Yes, but if you're wanting to do complex designs (which you only learn which ones are complex by trying to build them yourself) you'll need to dedicate more than just spare time on the weekends to learning. The phrase "reap what you sow" is applicable here I think.
  12. Hi @John Evans, I'm personally not able to find the actual part number individually, but there are some details about the microUSB connector on this thread here: Is the connector broken off entirely, or are there some instances where the cable was plugged in upside down so that the tab inside of the connector was simply bent downward slightly? If the latter is the case, you can push the tab back up with a small flathead screwdriver or something similarly sized. Thank you, JColvin
  13. Hi @VishnuChittan, Yes, that is the main drawback with the embedded AD5933 within the Pmod IA. The catch with the Pmod IA is that you already need to have some sort of idea of what impedance (or at least a general range of impedance) in order to receive and interpret accurate data. If you know (or can make an educated guess) what the approximate impedance will be, the next step would be to calculate if the output voltage range through the unknown impedance will saturate the ADC sampling this data, which as per the schematic is limited to a range between 0V and 3.0V. The equation used to figure out the gain applied (and what voltage would be presented to the ADC inputs) is as follows (as illustrated on page 18 of the AD5933 datasheet) : Gain = Output Excitation Voltage * PGA Gain * Gain Setting Resistor Impedance / Z unknown Where: Gain (measured in volts) represents the peak to peak range applied to the ADC Output Excitation Voltage is a register that is set in the AD5933 and can have a value of 0.2 volts, 0.4 volts, 1.0 volts, or 2.0 volts peak to peak. However, note that these values (listed on page 23) may actually be different as described on page 13, depending on what supply voltage you are using. PGA Gain is register that is set in the AD5933 and can have a value of 1 or 5 Gain Setting Resistor Impedance is the selected resistor value via the header J2 (sel); if left alone (sel pulled logic high), this resistor value is 20 Ohms. If pulled to a logic low state, this resistor value is 100k ohms. Note that with resistors your actual resistance may vary depending on the resistor variance (I believe 1% or better resistors were used). Z unknown (or predicted in this example) is the unknown impedance that is applied between the two SMA terminals (J3 and J4) If the calculation yields a Gain value greater than 3V (or close to it), this means that any frequency sweep applied will saturate the input to the internal ADC and provide unhelpful and incorrect results. At the same time, you do not want too small of a result in volts because the 12-bit ADC will not be able to effectively measure any changes as each difference may or may not produce a change in the LSB. If either of these things occur, either theoretically or in practice, you would likely want to change one of the settings (Output Excitation Voltage, PGA Gain, Gain Setting Resistor Impedance) to see what gain you would receive through the system. Let me know if you have any more questions. Thanks, JColvin
  14. Hi @kmesne, The Pmod COLOR does sense the color of objects; it even uses the same chip as the Adafruit part that you listed. The restriction (and perhaps I am misunderstanding your application) is that the color you are wanting to detect needs to be very close to the sensor. This is illustrated on the Adafruit page where they place an orange/apple directly on top of the sensor (link) in order to have it correctly detect the intended orange/green. Let me know if you have any more questions. Thanks, JColvin
  15. Hi @kmesne, We responded to your other question here with some detail, but I will try to elaborate a little bit more here. The Pmod COLOR is not intended to detect colors from any sort of distance, so you would need it next to the red/green light indicator and then have it transmit data to the main controller for the car as opposed to be mounted on the car (unless the red/green indicator was on the car itself). I believe the Pmod COLOR could detect the green in a green cube, but it would need to be fairly well lit up due to the limitations of the sensor itself. As a bit of perspective, this will be a large and non-trivial state machine (especially for first semester project) with a lot of conditions to be covered; is light red or green to control the enable bit on 2+ H-bridge drivers running the motor, which needs to be checked frequently in order to obey traffic laws, as well as the enable bit being toggled as appropriate when changing input directions if the vehicle can go in reverse to avoid burning out the h-bridges, pwm control over the enable pin to allow the vehicle to turn; all done over (presumably) 3 remote systems communicating with each other; the controller with the direction buttons, the color sensor detecting the light change, and the RC vehicle itself. Which system/input will have priority in the state machine and how often will you need to check each input to provide a "smooth driving experience" will all be things that you need to consider. Some good resources for VHDL basics can be found at asic-world.com and fpga4fun.com, as well as this page that discusses state machine construction in VHDL. Thanks, JColvin
  16. Hi @Bhushan021, We don't have an Arduino Due to directly test this ourselves, but I believe the ModbusMaster.h should generally be compatible with the Pmod RS485 since from what I can tell in the material available on the associated github account (link) it just uses a serial port and flow control bits which are required for the Pmod RS485 to work correctly. My understanding with the Arduino Due is that it subject to the caveat listed in the readme where you will need to disconnect the module from RX while uploading the sketch before being able to reconnect and properly use it. I am uncertain of how the other two pieces of hardware listed in the Github hardware states differ from the Pmod RS485 though. Thanks, JColvin
  17. Hi @RussGlover Ah, sorry about that; it's on ACBUS5. Let me know if you have any more questions. Thanks, JColvin
  18. Hi @Digisoles, As a quick check, is it the same exact chip as the Max32 (i.e. PIC32MX795F512L) and not a slightly different chip? I'm not sure if the bootloader would work correctly if it was a different chip. I also can't readily verify the bootloader you linked to as accurate, so it may be worth trying the one that is available on the right hand side of the Max32 Resource Center under Design Resources. Thanks, JColvin
  19. JColvin

    Pmod DA3 clocking

    Hi @Ahmed Alfadhel, "According to the manual, it must only be 0 when ~CS is 1" -- this is incorrect. As you directly highlighted in the image you attached: The timing diagram instead shows the situation presented in the previous sentence that discusses pulsing the LDAC rather than holding it low. Thanks, JColvin
  20. Hi @Denci, It's hard to say from your setup for sure; the main reason for this is that a rat trap snapping sound does not last very long (presuming it's about the same length as a snap of your fingers, this thread shows it might only last for about 5 milliseconds including the aftershocks), so during your 10 millisecond delay that you have in your main, you can very easily miss the snap happening. I presume the demo that was posted on our website presume a more continuous sound would be used so the implemented delay could be still be used and have the board be verified as working. Since the ADC runs at 1 MSPS, you can likely reduce the delay to 1 or 2 ms and hopefully get a cleaner result, though you may have to also increase your SPI clock frequency from 1 MHz to the stated maximum of 20 MHz (as per the ADC datasheet) to get this result. Let me know if you have any more questions. Thanks, JColvin
  21. Hi @RussGlover, I apologize for the delay; the details you are looking are as follows: TCK - ADBUS0 TDI - ADBUS1 TDO - ADBUS2 TMS - ADBUS3 OEJTAG - ADBUS7 OESRSTN - ACBUS4 Let me know if you have any more questions. Thanks, JColvin
  22. As a bit of further clarification, you would request any licenses from Xilinx, though it is my understanding that all of the Vivado WebPACK versions since 2016.4 or so are license free. I know that Digilent used to sell the original Arty board (now called the Arty A7) with a voucher for the Vivado Design Edition, but that was discontinued a few years ago (around the same time when Xilinx changed their own licensing policy and what was included in each edition). Thanks, JColvin
  23. Hi @Peggy, It should be as far as I can tell from my end, based on the screenshots I have attached. I was able to connect the SD card and log to it. I did have to close out of the GUI to disconnect and then reconnect to the OpenLogger before it showed that the SD card was available in the "Log to" dropdown box since it didn't dynamically update (though hot plugging is okay to do with OpenLogger). However, what I did learn (a bit unexpectedly to be honest) is that the data is sent over and logged in a binary format and would need to be parsed before it is readily readable. I know that a logging utility is being worked on and will be incorporated into the Digilent agent so that the data can be readily converted into a log file without needing to install anything else, though I do not know when this will be completed. Let me know if you have any questions. Thanks, JColvin
  24. Hi @Peggy, I asked some of the other engineers more familiar with OpenLogger and I think the problem you are running into is that the OpenLogger is only designed to work with SD cards that set up as a FAT32 (as opposed to NTFS which the larger cards you are using are probably formatted as). You will need to use a smaller SD card (32 GB or less) or partition one of the larger drives and re-format it as FAT32 in order for it to work correctly. Let me know if you have any questions about this. Thank you, JColvin
  25. Hi @oreo, I'm not immediately certain what the root cause of this might be so I have a few questions for you: - Are you an administrator or at least have appropriate permissions to install new things on the computers you referred to? - Were the other two computers you mentioned (an 1803 version and a second 1809 version) also Windows 10 Education edition computers? - To confirm, you were downloading the latest WaveForms and Adept 2 from their respective resource centers here and here? (WaveForms is on version 3.9.1 and the Adept System is on version 2.19.2) - Have you installed either of these software programs before or are these new installations to the computer? If you have installed them before, is WaveForms, Adept, or one of Digilent's instrumentation devices (such as an Analog Discovery 2) connected to the computer while you are installing the new version? - You might also try restarting the computer and re-downloading a fresh version WaveForms/Adept installer to see if that helps (since the "turn it off, turn it back on again" method works more often then it should) - If the above doesn't work, can you also try having Adept log it's installation process to an empty text document? You can do this as follows: If you have an e: drive (or something similar) create an empty text document named "adept_install_log.txt" (without the quotation marks in file name) Run the following command from the command line (it assumes that the installer executable for Adept is also located at same location as the empty text file, in this example this is at the root of the e: drive) "digilent.adept.system_v2.19.2.exe /LogFile="E:\adept_install_log.txt"" Be sure to use quotes around the file name that is specified for the log file. My understanding (based on this thread where the user also got the same error when installing Adept) is that the error doesn't say more than 3 driver packages were not able to be installed, so hopefully this will give us some more details. Thank you, JColvin