• Content Count

  • Joined

  • Last visited

  • Days Won


JColvin last won the day on April 22

JColvin had the most liked content!

About JColvin

  • Rank
    Forum Moderator
  • Birthday April 22

Profile Information

  • Gender
  • Location
    Pullman, WA

Recent Profile Visitors

9128 profile views
  1. Hi @LazerBoi64, I heard back from the engineer who designed LINX and got it working with the Rasberry Pi and the BeagleBone Black. Unfortunately though, they don't remember the exact version that was used beyond it being an 8.X variant. Based on this, I would guess it would probably be a slightly earlier version than 8.6 was loaded (such as the 8.5 variant), but again, that is just a guess. I'm sorry I don't have more definitive information for you. Thanks, JColvin
  2. Hi @KevL, When you are measuring across the battery with one of the channels (channel 1 for example), I presume you are using the solid orange wire on the positive side of the battery and the orange wire with the white stripe to measure the negative end of the battery? In the interest of covering all of the bases, is the 30 pin connector connected all of the way into the Analog Discovery 2? Additionally to clarify, are you just using the Analog Discovery 2 or are you using a BNC adapter? Additionally, if you are using the oscilloscope view (as opposed to the voltmeter view), do you have any attenuation set? Thanks, JColvin
  3. Hi @Yacov Cohen, Unfortunately that is correct. I kept hoping that I would find time to be able to look into and debug this issue and be able to present a clean working project for the Pmod AD5. I did get it setup so that multiple AD5's could be used (by declaring different constructor name) in the same project. I'm sorry I could not be of more help. Thank you, JColvin AD7193.zip
  4. Hi @benl, You should be able to determine what version of firmware you have on the OpenLogger, but going to the Device Manager (main page where you can select the actual OpenLogger or a simulated version), and going to the Configuration Menu for the actual OpenLogger and selecting the "Update Firmware" button under the Firmware section. There you will be able to see the current version as well as be able to select and download and update the OpenLogger to the latest version, which is currently 0.1807.0. I asked another one of our engineers more familiar with the WaveForms Live about this, and while it is technically working (I was able to get it to run for awhile before encountering the same errors as you), latencies introduced by the network cause WaveForms Live to fall behind, producing the errors that we are seeing. They let me know that this can be alleviated by throttling the sampling rate so less data needs to be transmitted between polls. In the future, they are thinking of adding a method to have WaveFormsLive resync with the OpenLogger, but they do not have the time to implement this right now. As for logging errors, you can do this by going into settings (in the upper left dropdown), open the advanced dropdown, change change the logging behavior to have the console log be stored on the console; by default it's set to none. You can then view the error log in the Chrome Dev tools (control shift J) and going to the console tab to view what is being printed to the log. Let me know if you have any questions about this. Thank you, JColvin
  5. Hi @SGY, You could realistically use any version of Vivado to program the Zynq chip on the Zedboard, though some of the projects will expect certain versions of Vivado and Xilinx SDK to be used in order for the projects to work the first time without any modifications. As for the pin requirements, it depends what GPIO functions you need. There are 4 Pmod ports on the Zedboard that are not constrained to any particular usage, but otherwise the Zedboard has 8 switches and 5 buttons as well. However, this only adds up to about 45 GPIO, so the other unassigned GPIO are present on the FMC connector. However, depending on what application you need for your GPIO, you may be hard pressed to find a FMC card that suits your needs. What sort of simple controls are you hoping to do? Thanks, JColvin
  6. Hi @sbellamy, If you are referring to the pins in the schematic, those names tend to be based on what Xilinx dictated the pin names for the Zynq. Otherwise, I would recommend looking at the Avent User Guide that is on the Zedboard Resource Center. Digilent doesn't make the KC705, but it has it's own user guide from Xilinx here that also explains the pin assignments here https://www.xilinx.com/support/documentation/boards_and_kits/kc705/ug810_KC705_Eval_Bd.pdf. Thanks, JColvin
  7. Hi @jamesW, I think that the bit depth of both images would need to be the same in order for it to work correctly (which I believe you said did work correctly at the end of your original post), though I am not certain of this. From what I can tell in the MTDS Library Programmer's Reference Manual (available as part of the documentation included in library download), it says in the BitMap Objects section that "Depending on the coordinates specified and the graphical element being drawn, the clipping can result in all, some, or none of the pixels making up the graphical element to be rendered actually being drawn on the bitmap itself. This is not an error, it is simply a natural consequence of the view that a bitmap is a viewport onto a larger virtual coordinate space." Truthfully, though I'm not certain when these circumstances would occur, though it seems to support the idea that both images would need to be the same bit depth. I also know there are a number of raster operations you can apply in the BitBlt() function as it's own parameter which specifices how the source and destination pixels are combined, but I'm not very familiar with how those all work visually, but the operations are defined on page 12. Thanks, JColvin
  8. JColvin

    Vivado free for Artix-7?

    Hi @TerryS, Unfortunately, the download speeds you are reporting are due to your end (either your internet connection or your computer hardware), not Xilinx's end. Note also as a fair warning (since I believe this is your first time using Vivado) that even simple projects, such as LED blinking project that xc6lx45, will probably take more time than you expect as the Vivado software needs to program and set every transistor inside the FPGA. There is a nice comment summarizing what all the tools need to during synthesis, implementation, and bitstream generation here. But as @xc6lx45, a lot of the material looks more complicated than it actually is, mostly because it's a different language. Thanks, JColvin
  9. Hi @dcc, I'm not certain how you are verifying that the HDL is writing to and then reading back from the SD card in a normal formatting style, but in general FAT32 is a widely used format for SD cards that has existing material for it. I am uncertain why you are using a special tool to write to the SD card though; from what I can tell the tool is Windows compatible, so why not just use the Notepad program which comes with Windows and save a .txt file with the data you are interested in reading to the SD card or just using Windows Explorer (the file manager) to move the file of interest onto the SD card? If you do have a header in your file, you will need to take account for that, though I do not know what you mean by "random file" in this case. Thanks, JColvin
  10. Hi @sgrobler, Our design engineer who designed the OpenLogger did an end-to-end analysis to determine the end number of bits of the OpenLogger. This is what they ended up doing in a summarized fashion: <start> They sampled 3 AAA battery inputs to the SD card at 250 kS/s and set the OpenLogger sample rate to 125 kS/s and then took 4096 samples; they then took the raw data stored on the SD card and converted it to a CSV file and exported the data for processing. Their Agilent scope read the battery pack at 4.61538 V and as they later found from FFT results the OpenLogger read 4.616605445 V, leading to a 0.001226445 V or ~1.2mV difference, which is presuming the Agilent is perfect (which it is not), but it was nice to see that the values worked out so closely. They calculated the RMS value of the full 4096 samples in both the time domain and using Parseval's theorem in the frequency domain as well, both of which came up with the same RMS value of 4616.606689 mV, which is very close to the DC battery voltage of 4616 mV. Because RMS is the same as DC voltage, this gives the previously mentioned DC value of 4.616605445 V. They can then remove the DC component from the total RMS value to find the remaining energy (the total noise, including analog, sampling, and quantization noise) of the OpenLogger from end-to-end. With the input range of +/- 10V input, this produces an RMS noise of 1.5mV. At the ADC input, there is a 3V reference and the analog input front end attenuates the input by a factor of 0.1392, so the 1.5mV noise on the OpenLogger is 0.2088mV at the ADC. With the 16 bits (65536 LSBs) over 3V, 0.0002088V translates to ~4.56 LSBs of noise. The ENOB is a power of 2, so log(4.56)/log(2) results in 2.189 bits, giving us a final ENOB of 16 - 2.189 = ~13.8 bits. Note though that this ENOB of 13.8 bits is based on system noise and not dynamic range, so for non-DC inputs (which will likely be measured at some point) the end number of bits is not easily determined. The datasheet for the ADC used in the OpenLogger (link) shows that the ADC itself gives an ENOB of about 14.5 bits at DC voltage (so the 13.8 bits is within that range), but at high frequencies, this of course rolls off to lower ENOB at higher frequency inputs. Thus, they cannot fully predict what the compound ENOB would be over the dynamic range, but they suspect it all mixes together and is 1 or 1.5 bits lower than the ADC ENOB response. </end> Let me know if you have questions or would like to see the non-abbreviated version of his analysis. Thanks, JColvin
  11. Hi @tjaplayer, When you say WaveForms would not recognize it, do you mean WaveForms does not detect the Analog Discovery 2 at all, or does it just come up as an unknown device? Additionally, are you able to see the Analog Discovery 2 on the Windows Device Manager (presuming) you are Windows? It will appear as "USB Serial Converter" under Universal Serial Bus controllers. Thank you, JColvin
  12. Hi @GMA, Yes, the standard micro USB cables will be sufficient, so long as they are not charging only cables. If you're looking to transfer data at high speeds, you may want to also look into getting a USB certified cable for better results. Those of us at Digilent have used standard cables (such as ones that come with phones to charge and connect to your PC) without issue though. Let me know if you have any other questions. Thanks, JColvin
  13. JColvin

    Genesys 2 DDR Constraints

    Hi @SeanS, Jon and I looked at this a bit further, and it looks like you are using ISE rather than Vivado. Is there a particular reason you are using ISE rather than Xilinx's newer Vivado software? Otherwise, my understanding is that you would need the UCF file loaded with the correct information (as per the legacy ISE material we have for the Genesys and MIG tutorial here). However, the Genesys 2 was developed and released a few years after the last formal release of ISE, so we do not have a UCF file for the Genesys 2 available (nor do we have the appropriate details in the .xdc file thanks to the existence of the board files for Vivado. Thanks, JColvin
  14. Hi @doconnor, I emailed our sales team about this; haven't heard back from them yet myself, but I am confident they will get back to you sometime today or tomorrow. Thanks, JColvin
  15. JColvin

    booting from sd card

    Hi @Michael P, I'm still a little confused. Does Vivado give an error when you are attempting to create the bitstream file? In one of your earlier posts you mentioned that you were able to program the FPGA with the bitstream file stored on the SD card and Jon gave some instructions on how to program the SD rather than QSPI for SDK projects, so I'm not certain what you are running into now. How much space does Vivado claim to this project of yours requires? Thank you, JColvin