JColvin

Administrators
  • Content Count

    2972
  • Joined

  • Last visited

  • Days Won

    87

Posts posted by JColvin


  1. Hi @ammolytics,

    This forum section will work. It definitely sounds like an interesting project. The main hurdle that I'm seeing with this project is that you will either need multiple Discovery's and OpenLogger to collect all of the analog inputs and the digital inputs. Accelerometers tend to provide their information in a digital fashion (such as through SPI or I2C) so while the Analog Discovery 2 can read in this data, the OpenLogger is not able to directly interpret protocol messages. However, the Analog Discovery 2 needs to be connected to a laptop to store the data, which you stated you do not need.

    The 3 strain gauges will likely have analog outputs as well as the output from the Magnetospeed Chronograph that you linked, though I don't know if it provides 1 or 2 analog outputs (since it uses 2 hall effect sensors). So that is 3 analog inputs required, plus 2 digital inputs (from the 2 hall effect sensors), as well as 3 digital inputs that will likely require interpretation. Looking at the sources you linked, it does not appear the required sample rate will need to be incredibly fast (guessing based the links where it said the stress wave travels from receiver to muzzle in about 0.12 mS, or 120 microseconds). Based on this, you likely could use a 1 MHz sampling rate (1 microsecond resolution) to capture all of the data you needed, of which the Analog Discovery 2 can achieve, while the OpenLogger will be limited (while using 3 analog inputs) to 166.7 kS/s (6 microsecond resolution), though depending on how many sample points you need, this may be sufficient for you.

    The main thing I'm getting at is that I don't think that either the OpenLogger or the Analog Discovery 2 will an all-in-one solution for you; the Analog Discovery 2 because it only has 2 analog inputs and you need at least 3 (and it can't store data to an SD card), and the OpenLogger because it doesn't directly interpret data protocols that will likely be coming from the accelerometers. To be fair, the OpenLogger could in theory receive all of the bit-banged data accelerometer data on digital inputs and then you interpret them later, but the logging functionality (or at least the ability to read the logged data) isn't integrated yet and this also presumes that accelerometers will power on and start sampling data in the exact configuration you want upon start-up with no instructions provided to them which is not a guarantee.

    What I would probably recommend looking into would be using a microcontroller or microprocessor to collect the data and store it on an SD card, since there are a number of microcontollers that have both enough analog and digital inputs and you can program them to to interpret the protocol data from the accelerometers for you and send only the relevant data to an SD card. You'll likely need to use an external analog-to-digital converter if the voltages you are measuring are outside of the ranges that the on-board ADC can accept (usually either 0V to 3.3V or 0V to 5V and Magnetospeed sensor you linked was showing 7.6V to 9V readings).

    Let me know if you have any questions about this.

    Thanks,
    JColvin


  2. Hi @BTTroyer,

    I haven't looked into the ChipKit Core recently (we have our own Digilent Core), but presuming the functions are the same, I believe the DEIPcK library has two functions that do just this (getMyMac and getMyIP, described on lines 351 and 382 of DEIPck.cpp) that will populate their respective values when called and then you will be able to send these values to a serial terminal (or whatever you prefer) to be able to see them.

    Let me know if you have any questions.

    Thank you,
    JColvin


  3. Hi @bharaths,

    Can you provide some more detail on what DDR you are attempting to read from/write to? Are you using the on-board DDR present on the Nexys Video? If you are, the DDR chip is hardwired to a 1.5V bank so you would not able to readily use 1.8V logic with it. If you are using an external DDR chip (presumably DDR2 if you are using 1.8V logic), you could use the FMC connector to facilitate the communication between the LVDS and HSTL logic. Based on this forum thread from Xilinx, you should be able to directly use HSTL and LVDS with AC coupled termination with both receiving the others signals without issues.

    Let me know if you have any questions.

    Thanks,
    JColvin


  4. Hi @rosey12,

    I would recommend you look at online troubleshooting instructions for this as the error does not pertain to an FPGA board of any kind, but your computer; if you are uncertain of how to fix this I would recommend you take your computer to a local repair shop. If you have any questions about Digilent products, please feel free to post them.

    Thanks,
    JColvin


  5. Hi @rprevost453@gmail.com,

    Homework solutions for the Real Analog materials do exist (though they are all scanned copies of the original solutions made by the creator of the Real Analog materials, so Digilent has not gone through to verify the complete accuracy of all the solutions).

    However, it is my understanding (I am verifying this) that only verified instructors/teachers will be able to get these solutions in the interest and spirit of helping maintain academic integrity for those are taking this as a course at a university. I do not know the policy of providing solutions to users who are going through the material on their own time without a formal setting, partially because of the reality that there is no real way to determine if this is actually true (or just a student pretending to do this on their own time) outside of the honor system, though again, this is just a guess on my part and not an answer. I have contacted our product manager responsible for the Real Analog material to get her thoughts on this, though they are out of the office this week at a conference, so it may be a few days before I hear back.

    Thank you,
    JColvin


  6. Hi @cliftw,

    Digilent simply sells the Multisim Student Edition (as opposed to licensing it), so we are not able to readily comment with certainty in terms of who is authorized to install and use that particular edition of Multisim, though it is my understanding that the $40 version is a permanent license, so long as the user remains in enrolled in the Academic Institution, as per section 4 of Addendum E in the English version of the National Instruments Software License Agreement, https://www.ni.com/pdf/legal/us/software_license_agreement.pdf.

    I am not a lawyer, but the language used in National Instruments Software License Agreement makes it seem like to use a Student Edition License the user would need to be in "continuing education classes"; there is apparently an option for a secondary school license (as mentioned in Section 5 of Addendum F of the same license agreement), though I don't know the details of that beyond what is stated there.

    In terms of the limitations of the software, I am not certain if there is limitation between this particular Multisim for students vs the one for education in general. I do know that the $40 version does not come with a Standard Service Plan (which according to NI's website offers live phone and email support from NI engineers, automatic version updates, access to training and demonstrations, and access to historical versions).

    I don't know what you are planning to use in your course, but depending on your needs/planned classroom material the free version of Multisim Live from National Instruments may suit your needs.

    In the end, you will likely need to contact National Instruments for accurate information on the available licensing details.

    Thank you,
    JColvin


  7. Hi @sambuls,

    LabVIEW 2014 Home Edition is indeed based on LabVIEW 2014; it includes the Full Development Version of LabVIEW (as opposed to a Student Version of LabVIEW) and is a lifelong (perpetual) license (more details available on the license agreements here and here). I'm not familiar with the Student License so I'm not certain if it's yearly or not; that would be a question for National Instruments rather than Digilent.

    Unfortunately, there are currently no plans to update LabVIEW 2014 Home Edition to a newer version of LabVIEW, nor do I anticipate there being any plans to do so.

    Let me know if you have any questions about this.

    Thank you,
    JColvin


  8. Hi @Ufuk Keskin,

    The same github user has a SPI slave version here: https://github.com/Nematollahi/SPI-FPGA-VHDL/blob/master/hdl/spi_slave.vhd.

    Additionally, remember that in HDL, everything happens simultaneously rather than sequentially so the HDL you have written where you assign data_out as all 1's and then in following line assign data out to one of two options can potentially happen at the same time; so I believe the resulting circuit that is implmented when the code is synthesized will not assign dat_out as all ones and then check the if statement after that.

    Thanks,
    JColvin


  9. Hi @Ufuk Keskin,

    Could you attach your test bench? Right now your code looks like it is set up just so that the dat_out is being fed with the data and filling MISO (so your slave device, the Basys 3, would be sending out data) and the dat_reg is getting data from MOSI, which makes sense, but something is isn't quite right in your design. I would also recommend taking a look at this SPI design to reference to ensure everything is set up correctly.

    Thanks,
    JColvin


  10. Hi @bacif,

    Based on your picture and the voltages you gave me for the capacitors, my best guess at the moment is that some ESD was applied to the FMC connector (which is much easier to do with the FMC breakout board you have attached with all of the exposed pins and the FMC connector in general is very sensitive to this, i.e. no protection, to maintain high speed data throughput), causing the damage you experienced. I'm not certain where the connections have all been made with regards to connecting to the 3.3V to 5V on the initial HEF4104BP, but from what I can tell they look reasonable to me (i.e. nothing jumping out at me with regards to power and ground shorting each other out).

    The good news is that I'm also fairly sure that it is just IC27 that is damaged (as opposed to the entire Zedboard) as the two capacitors that were not at the expected voltage were C340 (measuring the VADJ voltage) and C368 which measures PG-ALL. PG-ALL (which controls the "power good" LED, hence why it is off), is controlled by a couple of voltage rails (both of which were fine based on the capacitor voltages I requested you check) and VADJ-FB, which if the VADJ supply is not working, would likely lead to the feedback for it not working properly as well.

    For peace of mind though, it wouldn't hurt to load a different project onto the Zedboard to confirm that the other components are working as intended. One aspect you may not be able to readily test is the PS side of things as PG-ALL does also control Power-On-Reset button for the PS, so if that is not properly being initialized upon power up, it probably will not work as intended.

    From your second post though, it seems that you have a second Zedboard with a similar set of issues?

    Thanks,
    JColvin


  11. Hi @sus-e,

    As per this thread, the maximum SPI frequency is 3.5 MHz for a PIC32 and a 4 MHz for an AVR chip; anything faster than that will start to cause erratic behavior with the implemented state machine on the embedded PIC32MZ on the MTDS, especially if the touch screen functionality is being used.

    Thanks,
    JColvin


  12. Hi @air6pilot,

    I've moved your thread to a more appropriate section of the Forum (the Project Vault is for completed projects you want to share with the community). The demo project for both the Zybo Z7-20 and the Zybo Z7-10 are available for download here. Instructions for getting the project running can be found here, https://reference.digilentinc.com/learn/programmable-logic/tutorials/github-demos/start; this project isn't directly on GitHub at the moment, so you can jump to step 2.

    Let me know if you have any questions.

    Thanks,
    JColvin


  13. Hi @bacif,

    If you just using the logic analyzer or the oscilloscope tools on the Analog Discovery 2, then I think it would be very unlikely that connecting those pins would cause an issue, especially considering that you already have the grounds connected. Do you happen to have a picture of the physical connection of the Analog Discovery 2 to your system?

    Because you said that you had VADJ set to 3.3V, I presume that means you soldered on your own connector for it? Was there a particular reason you needed VADJ at 3.3V? The reason I ask is because the mezzanine card you linked to appears to just be a breakout board for a FMC LPC connector. Additionally, I am a little confused by your picture; where exactly is the mezzanine card? I realize that it would be attached to the FMC connector, but it looks like in your image that the Analog Discovery 2 is instead attached to the HEF4104B? Is this one way voltage translator connected to anything?

    I realize it's a custom made ADC board so there likely isn't a datasheet or general schematic available for it, but what logic type and voltage levels does it use? I ask because the Pmod ports run at 3.3V CMOS and that is the same voltage rail that powers the "Power good" LED as well as the bank that controls the user LEDs.

    In the interest of determining what all is happening on the power regulators, could you check the voltage on the following capacitors while the system is connected and powered?

    Near IC27 on the bottom left on the underside of the board:
    - C330 (should be 5V):
    - C335 (should be 3.3V):
    - C340 (should be whatever VADJ is set to):
    Near IC28 on the bottom right on the underside of the board:
    - C351 (should be 1.5V):
    - C356 (should be 1.0V):
    Near IC29 on the center right on the underside of the board:
    - C368 (should be 5V):
    Near IC30 on the top left on the topside of the board:
    - C366 (should be 1.8V):
    - C369 (should be 5V):
    Near IC30 on the top right on the underside of the board:
    - C388 (should be 12V):
    - C392 (should be 5V):

    Thank you,
    JColvin

     

     


  14. Hi @JeffJ,

    Are you able to write text in this >240 region? Otherwise, based on the MTDS Library Programmer's Reference Manual, the SetDisplayOrientation function describes that the portrait and landscape modes switch which sides (long and short) are the x and y axes. Did you also switch the axis for your create button function to account for this, since keeping the old y axis value on the new y axis (which is now shorter in landscape mode) would be attempting to render the button outside of the display area.

    Thanks,
    JColvin


  15. Hi @mkj,

    There are currently not any plans for an SDK like the Discovery line has or similar scripting capabilities. As for the non-browser software, the local app (that's part of the Digilent Agent if I recall correctly) is what we have available, though as you probably expect, the most current version will be the one available on waveformslive.com.

    Let me know if you have any more questions.

    Thanks,
    JColvin

    P.S. Glad to hear you are a fan of the Analog Discovery products!