Search the Community

Showing results for tags 'pmod'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • News
    • New Users Introduction
    • Announcements
  • Digilent Technical Forums
    • FPGA
    • Digilent Microcontroller Boards
    • Non-Digilent Microcontrollers
    • Add-on Boards
    • Scopes & Instruments
    • LabVIEW
    • 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

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Found 157 results

  1. kadionik

    I2C PMOD access under Linux

    Hi all, I've built with the Nexyx4 DDR board a system running Linux. In my running HW design, I've added the onboard temperature sensor of the board and the PMOD A connector to connect a I2C TMP3 temperature sensor. The HW interface for the onboard temperature sensor is the AXI IIC interface. For the TMP3 sensor with the Digilent's vivado library (as explained in: https://reference.digilentinc.com/learn/programmable-logic/tutorials/pmod-ips/start), it's the AXI LITE IIC interface. With the Linux I2C tools, I see the onboard sensor: nexys4ddr:/# uname -r 4.14.0-00493-gb68293ad2c93-dirty nexys4ddr:/# i2cdetect -y 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- 4b -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- And I can read temperature with the Linux I2C API: nexys4ddr:/# tsttemp TEMP=29.2 oC nexys4ddr:/# But I don't see the I2C TMP3 sensor. My questions are: - The vivado TMP3 instance has a I2C interface (AXI LITE IIC). Can I use the Linux I2C API? If yes, on the PMOD ja port, what are the pins of the connector corresponding to SCL, SDA (easy for ground and 3V3 ;-)? I didn't find this information in the Digilent's vivado library. - If I I can't use the Linux I2C API, I must generate by hand and by software the SCL and SDA signals and what is the role of AXI LITE IIC interface? In this case, would it better to use directly the IIC AXI interface as with the onboard sensor and precise after in a XDC file connexions between to the PMOD A port and TMP3 sensor? Thank you for your help. Pat.
  2. Hi all, This is a quick and dirty howto. This howto describes how to use I2C modules (onboard and through PMOD connector) under embedded Linux. I've chosen to build my own Linux distro based on Linux kernel source for MicroBlaze softcore and busybox project for the init RAM DISK. My board is the Nexys4 DDR board. If you respect the following requirements for the HW design compatible with Linux, you can use Petalinux too. HW Vivado requirements (according to Xilinx UG1144) design to boot Linux: MicroBlaze with MMU support by selecting either Linux with MMU or Low-end Linux with MMU configuration template in the MicroBlaze configuration wizard. External memory controller with at least 32 MB of memory. Dual channel timer with interrupt connected. UART with interrupt connected. Ethernet with interrupt connected. Note that all peripherals you use must be interrupt capable. For the UART peripheral, if you have not enabled interrupts, you have no Linux console outputs. For the Nexys4 DDR, you can follow this online tutorial: https://reference.digilentinc.com/learn/programmable-logic/tutorials/nexys-4-ddr-getting-started-with-microblaze-servers/start At this stage, for the Nexys4 DDR board, you can add the onboard i2C temperature sensor (ADT7420) that uses the AXI IIC IP block. I've added a second external temperature sensor (PMOD TMP3) connected to PMOD JA pins of the Nexys4 DDR board. I've chosen to connect SCL TMP3 pin to JA1 PMOD JA pin (C17 FPGA pin) and SDA MP3 pin to JA2 PMOD JA pin (D18 FPGA pin). You connect GND and 3V3 pins from PMOD JA connector to corresponding TMP3 pins. You have finally 4 pins to connect. You obtain the Vivado design shown below. Notice that both AXI IIC IP blocks have interrupts connected for Linux compatibility. For the TMP3 sensor, I have an external port named temp3_sensor. I've created a XDC file containing: set_property -dict { PACKAGE_PIN D5 IOSTANDARD LVCMOS33 } [get_ports { eth_ref_clk }]; # Sch=eth_ref_clk set_property -dict { PACKAGE_PIN C17 IOSTANDARD LVCMOS33 } [get_ports { tmp3_sensor_scl_io }]; set_property -dict { PACKAGE_PIN D18 IOSTANDARD LVCMOS33 } [get_ports { tmp3_sensor_sda_io }]; You can see that: tmp3_sensor_scl_io signal is for SCL I2C signal. tmp3_sensor_sda_io signal is for SDA I2C signal Please respect notation: xxx external I2C port gives xxx_scl_io and xxx_sda_io signal names in the XDC file. Generate .bit file. Launch Vivado SDK tool, install the device tree plugin and generate Device Tree files. You can follow this link: https://numato.com/kb/neso-microblaze-linux-run-linux-neso-artix-7-fpga-module/ Copy the generated pl.dtsi file (under project_1/project_1.sdk/device_tree_bsp_0/ directory) into arch/microblaze/boot/dts/ Linux directory. Use the generated system-top.dts file (under project_1/project_1.sdk/device_tree_bsp_0/ directory) to create the xilinx.dts file into arch/microblaze/boot/dts/ Linux directory. Be carefull with stdout options in the xilinx.dts file if you want Linux output enabled. Mine is: /dts-v1/; /include/ "pl.dtsi" / { chosen { bootargs = "console=ttyUL0,9600"; linux,stdout-path = &axi_uartlite_0; stdout-path = &axi_uartlite_0; }; aliases { ethernet0 = &axi_ethernetlite_0; serial0 = &axi_uartlite_0; i2c0 = &axi_iic_0; i2c1 = &axi_iic_1; }; memory { device_type = "memory"; reg = <0x80000000 0x8000000>; }; }; &axi_ethernetlite_0 { local-mac-address = [00 0a 35 00 00 00]; }; Generate your init RAM Disk for root File sytem. I suppose that you can do this. Generate your Linux kernel. I suppose that you can do this: $ make ARCH=microblaze CROSS_COMPILE=microblazeel-xilinx-linux-gnu- simpleImage.xilinx -j 4 Program the FPGA device and download the simpleImage.xilinx file (kernel + init RAM Disk) under arch/microblaze/boot directory into RAM with the JTAG interface and finally execute. That's all folks! Ramdisk addr 0x00000000, Compiled-in FDT at c03ad4f8 Linux version 4.14.0-00493-gb68293ad2c93-dirty (kadionik@ipcchip) (gcc version 8 setup_cpuinfo: initialising setup_cpuinfo: Using full CPU PVR support wt_msr_noirq setup_memory: max_mapnr: 0x8000 setup_memory: min_low_pfn: 0x80000 setup_memory: max_low_pfn: 0x88000 setup_memory: max_pfn: 0x88000 Zone ranges: DMA [mem 0x0000000080000000-0x0000000087ffffff] Normal empty Movable zone start for each node Early memory node ranges node 0: [mem 0x0000000080000000-0x0000000087ffffff] Initmem setup node 0 [mem 0x0000000080000000-0x0000000087ffffff] On node 0 totalpages: 32768 free_area_init_node: node 0, pgdat c0525af4, node_mem_map c07a2000 DMA zone: 256 pages used for memmap DMA zone: 0 pages reserved DMA zone: 32768 pages, LIFO batch:7 pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768 pcpu-alloc: [0] 0 Built 1 zonelists, mobility grouping on. Total pages: 32512 Kernel command line: console=ttyUL0,9600 PID hash table entries: 512 (order: -1, 2048 bytes) Dentry cache hash table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash table entries: 8192 (order: 3, 32768 bytes) Memory: 121948K/131072K available (3765K kernel code, 121K rwdata, 1312K rodata) Kernel virtual memory layout: * 0xffffe000..0xfffff000 : fixmap * 0xffffe000..0xffffe000 : early ioremap * 0xf0000000..0xffffe000 : vmalloc & ioremap NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 irq-xilinx: /amba_pl/interrupt-controller@41200000: num_irq=5, edge=0x6 /amba_pl/timer@41c00000: irq=1 clocksource: xilinx_clocksource: mask: 0xffffffff max_cycles: 0xffffffff, max_is xilinx_timer_shutdown xilinx_timer_set_periodic sched_clock: 32 bits at 100MHz, resolution 10ns, wraps every 21474836475ns Calibrating delay loop... 49.15 BogoMIPS (lpj=245760) pid_max: default: 4096 minimum: 301 Mount-cache hash table entries: 1024 (order: 0, 4096 bytes) Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes) random: get_random_u32 called from bucket_table_alloc+0x2e4/0x35c with crng_ini0 clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 191s NET: Registered protocol family 16 clocksource: Switched to clocksource xilinx_clocksource NET: Registered protocol family 2 TCP established hash table entries: 1024 (order: 0, 4096 bytes) TCP bind hash table entries: 1024 (order: 2, 20480 bytes) TCP: Hash tables configured (established 1024 bind 1024) UDP hash table entries: 128 (order: 0, 6144 bytes) UDP-Lite hash table entries: 128 (order: 0, 6144 bytes) NET: Registered protocol family 1 RPC: Registered named UNIX socket transport module. RPC: Registered udp transport module. RPC: Registered tcp transport module. RPC: Registered tcp NFSv4.1 backchannel transport module. random: fast init done Skipping unavailable RESET gpio -2 (reset) workingset: timestamp_bits=30 max_order=15 bucket_order=0 io scheduler noop registered io scheduler deadline registered io scheduler cfq registered (default) io scheduler mq-deadline registered io scheduler kyber registered Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled 40600000.serial: ttyUL0 at MMIO 0x40600000 (irq = 5, base_baud = 0) is a uartlie console [ttyUL0] enabled brd: module loaded libphy: Fixed MDIO Bus: probed xilinx_emaclite 40e00000.ethernet: Device Tree Probing xilinx_emaclite 40e00000.ethernet: Failed to register mdio bus. xilinx_emaclite 40e00000.ethernet: MAC address is now 00:0a:35:00:00:00 xilinx_emaclite 40e00000.ethernet: Xilinx EmacLite at 0x40E00000 mapped to 0xF02 i2c /dev entries driver NET: Registered protocol family 17 Freeing unused kernel memory: 2296K This architecture does not have kernel memory protection. Hostname : nexys4ddr Kernel release : Linux 4.14.0-00493-gb68293ad2c93-dirty Kernel version : #120 Thu Dec 6 16:51:57 CET 2018 Please press Enter to activate this console. nexys4ddr:/# For the first I2C sensor (onboard ADT7420 sensor of the Nexys4 DDR board), we must use the /dev/i2c/0 (or /dev/i2c/i2c-0) character driver file (Major=89 minor=0). For the second I2C sensor (external TCN75A PMOD TMP3 sensor), we must use the /dev/i2c/1 (or /dev/i2c/i2c-1) character driver file (Major=89 minor=1). nexys4ddr:/# i2cdetect -y 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- 4b -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- nexys4ddr:/# i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- 48 -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- You can now use the Linux API for reading the I2C sensors... Pat.
  3. ElectronicsBeginner

    Pmod on Arduino

    Hi, I want to connect Pmod to Arduino Uno. From Arduino pins we get 5V so does this refer only to power supply (which we have on Arduino board) or for others pins too? Is it safe to connect it directly to Arduino or I have to use voltage dividerfor other pins? Thank you.
  4. Hi, I have started using PMOD BLE recently and I can make a connection in between BLE and PC using a terminal (with Nexys4DDR making a direct connection in between). However, when I write a VHDL code, describing what I made on the terminal one by one, the BLE device stucks at rebooting. For both applications I use the following sequence that is described in "RN4871_user_guide.pdf" page 59 : - Send $$$ - Wait a second - Send SS,40<CR> (this is to select UART Transparent feature only) - Wait a second - Send R,1<CR> - Wait a second - Wait for an ASCII entry but, at "R,1<CR> ", the BLE device turns the blue LED on (which is LD1 on schematic) and it does not shuts it off no matter what. While so, (I mean when the LED is ON) the iOS application SmartDiscover (or anyother terminal) cannot see the module. So, I cannot reach the device at all. Besides, the device returns this when connected via PC terminal (through cable) => CMD> AOK<\r><\n>CMD> Rebooting<\r><\n>%REBOOT% and returns this when FPGA communicates with the device directly => CMD> AOK<\r><\n>CMD> Rebooting<\r><\n> so, it does not return me %REBOOT% string, but seems like it stucks at some point where it is trying to reboot itself. Any help with this would be very nice at this point, Thanks in advance, Bera
  5. Flux

    VGA Pmod Tutorials

    Hello, I've been having a lot of fun with the VGA Pmod. I thought other forum members might appreciate a couple of tutorials I've produced with it. Part 1: Intro to VGA and basic animation: https://timetoexplore.net/blog/arty-fpga-vga-verilog-01 Part 2: Bitmap display using your own image: https://timetoexplore.net/blog/arty-fpga-vga-verilog-02 Both are written in pure Verilog, so it's (hopefully) easy to understand what's going on and adapt for your own projects. Feedback welcome, Will
  6. KaranPatil

    PmodGyro interface with NI myRio

    Hello everyone I am trying to interface the Pmod Gyroscope with myRio with the code provided in the myRio Project Essentials Guide. I have made connections as per the diagram in the guide and there is no problem with it. When I run the VI, when the sensor is stationary the value of x displacement should be zero and not change but it is incrementing with time even when I am not moving the sensor. You can check the problem in the YouTube link I have shared bellow. There is no problem with the hardware since I have tried the same program with other gyroscope of same IC. The program files are attached below. Please help it is very important for me to get the sensor working ASAP Video Link: https://youtu.be/dwFc86p1KlA Connection Diagram: Code: Main.vi Gyroscope demo.aliases Gyroscope demo.lvlps Gyroscope demo.lvproj
  7. Akshay Bhat

    Pmod AD5

    Hello, I am also using the PMOD AD5 to get the values of two sensor one is voltage and another is temperature , but the problem is i wanted to get the value of the only voltage first then only temperature, what i did is i just added a function of the temperature to it with the same voltage code that is given in the example of the AD5 driver, i change the configuration register values to byte[1]=0x04 byte[2]=0x03 byte[3]=0x18 so that i can have the enable the 2 single channels and the value be in uni polar by doing this i am getting the values voltage is: 2.5v (which what i set in the POT) temperature is : 99.99 (which id taking the data of channel one and giving me the value) in next cycle voltage is taking the value from the channel 2 and giving me the value , here the temperature what i am getting is almost correct but i need it accurate . So can u please provide me with the code that will help me getting the values from the two different channel one after the other Thanks & Regards Akshay
  8. AJS

    TEXT OVERLAY IN MTDS

    Hello, I am trying to display text on an image using the libraries provided . I am able to load the image and print text separately but when an image is loaded and i try to display text on it, it does not seem to print. How can i print text on a image loaded from sd card present in Pmod MTDS. With Regards, Ajs
  9. Hello, I'm trying to configure my Basys 3 board to control a DC motor through the Pmod connector with an HB5 within Vivado. I've followed all steps in the Pmod IP tutorial but I'm stuck at 3.3. I'm not sure which specific pmod ip block I should use or how exactly to connect it. I couldn't find one corresponding to the hb5. Any advice would be greatly appreciated. Additional points: I don't need clocks or interrupts fed to the pmod I'm simply trying to control the operation (on/off) of the motor through one of the on-board switches. Thanks, gd
  10. Akshay Bhat

    Pmod MTDS display on ZED board

    Hello , I am using the Pmod AD5 and Pmod MTDS on the Zedboard I am connecting the pmod AD5 with a simple POT and giving different values it. From the demo example in the mtds ip I got to know that display images are store in the file with .bmp in SD card then invoked when needed My problem is i have nearly 500 values in to be displayed so , my question Is there any way to dynamically generate the .bmp file to the MTDS and display it when we give the different values from the AD5 ? Regards Akshay
  11. AJS

    Pmod MTDS

    Hello am new to this to and this is bit confusing. Am working with Pmod MTDS and trying to use Pmod MTDS IP in zedboard board. I have used the library and board files as stated by Digilent. Problem is when i use MTDS in spi interface mode and i get only 4 pins in IO planing list and reset pin (pin 8 in Pmod MTDS device) is missing. Can anyone tell me how to get that reset pin or am i doing it worng? 2nd question is what data has to be written to the mtds to display it in device? I mean if i need to display number " 1 " then what am i supposed to send to MTDS ip? And last question what is pmod interface port? I see 2 interface geting added when i include Vivado digilent IP library in IP settings in vivado , what are those interface port? Am sorry for asking silly question but i am not finding ans to these anywhere else. Thank You AJS
  12. We are suppose to add a library from here: https://github.com/Digilent/vivado-library/releases and add it to the projects IP repository list to be able to add the block in the IP Integrator. I have checked all the releases and i cant find the Pmod NIC100 anywhere, i think its called PmodNIC, but correct me if am wrong because i haven't seen it anywhere anyway. Until i find this IP, the Pmod is just another paperweight on my desk along with my stalled project, Please help. I am using the Arty A7: Artix-7 FPGA Development Board.
  13. Hello, I am unclear on whether the PmodIA works with Arduino. If I get the digilent arduino core will I be good to go, or do I need a digilent board to use it? Also, is it possible to modify the pmodia to use it on lower frequencys/impedance so it could be used for batteries? Thank you!
  14. Hello, I have purchased a PMOD ESP32 for evaluation with Renesas Synergy. I have installed the required resources from the renesas synergy pmod esp32 application note. I also have the sample project up and running on the target demo board (PK-S5D9). I am communicating with the module through Tera Term and USB CDC. I am able to communicate with the module, and the module responds to the "get_mac" command: The issue I am having is that the command line options for "scan" and "connect" do not work. The module seems to be hang, and nothing is displayed in Tera Term after about 10 minutes of issuing the "scan" or "connect" commands. For the "scan" command, I get an "OK" response, but no APs are displayed in Tera Term. send command to module module response The Tera Term output remains as the image below for more than 10 minutes, with no APs listed. For the "connect" command, I am able to set the provisioning (removed the SSID and passphrase from screenshots): Send the "connect" command: Logic analyzer capture: After more than 10 minutes, there is no "OK" response, and the Tera Term displays the same info: While there is no logic analyzer activity. What could cause this type of behavior? Did I miss something in the project configuration? Is anyone else experiencing this issue? I am using e2studio 5.4.0.023, SSP 1.3.3. The ESP32 module has been updated to version 1.1.1, using the flash download tools v3.6.4.
  15. Howdy. I have what I think is a fairly basic question: Which (non-FPGA) processor boards support Pmod modules? Is there any chance to see a table that shows each of the current ARM and PIC32 processor boards down a left-hand column and then the quantity of each of the Pmod ports (of each different configuration) on the middle of the chart? Thanks
  16. Hello, I've posted the next part in my FPGA graphics series using the Arty + VGA Pmod or Basys 3. It shows you how to make use of double buffering to animate sprites using simple Verilog. https://timetoexplore.net/blog/arty-fpga-vga-verilog-03 Feedback very welcome, Will PS. I'll add the source to GitHub shortly.
  17. Mahdi

    How to split a JTAG between two pmods?

    Hello, I am using Arty-Z7-10 board with 3 Pmods (NAV, GPS and RTCC), while there are only 2 JTAG ports available on the board. So, I decided to buy one of these 2*6-pin JTAG splitter cables and divide one of my JTAG ports between PmodGPS and PmodRTCC (since both of them need only one row of JTAG). Now, I am trying to make a block design and connect both of them to one JTAG, but it does not seem to be feasible. When I connect the first Pmod to the JTAG port, it occupies the whole port and it does not allow me to add another Pmod to it. Is this something I have to do in Verilog, and modify my XDC file? or is there an easier way to do it by just dragging and dropping the IPs in the block design? Best, Mahdi
  18. I am trying to connect my PMOD MTDS to the Zybo Z7, without Arduino. I have integrated the IP files, connected it via block diagram, and set up a FAT32 microSD with the 2 files that are needed also. When trying to connect to Vivado I can seem to figure out how to get to the console for which I can do MTDS Firmware code so I can do a custom UI. Documentation does not help much with connecting this PMOD. Please advise if you're familiar thanks.
  19. Abhinav Airan

    Pmod GPS not working

    I am using a pmod GPS with a zybo z7-10 board. However, even after running the sample code for the GPS, nothing is being printed on the serial monitor. I'm not entirely sure whether I have connected the pmod right, since there are 6 pins on the GPS but 12 pins on the pmod port. Nowhere has anyone mentioned whether one should connect the pmod GPS on the top six pins or the bottom six pins. Am I doing something wrong here or is there some other problem? I have also attached a picture of my block diagram for reference.
  20. Hello all, I have a question pertaining to my ZedBoard. I'm running Linux on the PS using the built in SD card slot. I'm simultaneously building an isolated system in the PL, currently consisting of a Microblaze running a baremetal application. Now I'd like to run Python in the PL without touching the PS setup. Could I use the SD card Pmod to persist Linux to run on the Microblaze? I know I can't touch the existing SPI since it belongs to the PS, and I'd also like plenty of storage. Thank you for your time
  21. Yenyulu

    Pmod AD5_Out data rate

    Hello I bought one PmodAD5, and tried to change its output data rate. I know sample rate can be changed by mode register value;However, how can i make changes to highest value(4.8kHz) of mode register in code. Thanks.
  22. Dear all, I'm trying to integrate Pmod GPS on my Xilinx ZCU102 platform with a Linux OS. To do so, I'm using the resources available in Digilentinc's vivado-library zip (PmodGPS_v1_1 IP + software drivers using xuartns550). I managed to make it work correctly in polling mode (calling GPS_getData func) with a clock freq of 49.995 MHz and a baudrate of 9600 symbols/s. Nonetheless, when I try to increase the baudrate to 115200, the NMEA messages in the ->recv buffer get corrupted. For instance, some messages are not correctly formatted because one comma has been flipped to another char and it makes the GPS_formatSentence function to seg fault. It's really important for my project to achieve higher rates (I'm working on a 60 fps camera and I would like to associate a GPS data to each frame and can not afford to spend too much time in the GPS_getData function in I want to preserve real time operation). Here are the hypothesis I make on the cause of this problem: a) The clock at both ends of the UART link are not synchronized. As far as I understand, this problem can also occur at low baud rates so it's probably not the main cause (cf PercentError computed in XUartNs550_SetBaudRate). b ) There is corruption on the physical link (my PMOD in connected to the ZCU102 using female-female jumper wires). Here are the workaround I tried so far: a) Check the checksum of the NMEA message before calling GPS_formatSentence and discard corrupted messages. This improve the reliability of the system but some problems still appear from time to time which is definitely not acceptable. I feel like it will be quite complex to design a check that is able to handle any kind of corruption (what if a $ sign or a * gets corrupted ?) b ) Use baud rate = 9600 and call GPS_getData and GPS_formatSentence in another thread (so that the main thread is not waiting for GPS_getData to complete). Unfortunately, I only have little experience in multi-threaded programming and I did not manage to make it work properly. I also think it's not very good practice, it would be better to make it work at higher baud rates. Do you have any complementary idea about how to fix that ? Thanks in advance, Alexandre
  23. Nachiket Karve

    Connect two Pmods to the same port

    I recently started working on the zybo z7-10 board. I have two pmods - the PmodGPS and the PmodCON3. Both of these pmods have 6 pins each and I want to connect both of these pmods to the same port on the fpga. However, I could not connect the PmodGPIO_0 and the PmodGPS_0 blocks to the same port in my Block Design in Vivado. Is there any way to do this?
  24. interwiser

    How to use the 4 channel output

    Hello everyone´╝îI bought PMODDA1, but I don't know how to set PMODDA1 to make two DAC work at the same time in SDK and output 4 channels, and demo on GitHub can only output two channels´╝îI would be very grateful.
  25. I need a second ethernet port on my Nexys4ddr board, so I got the PMODNIC100 ethernet connector. To get started, I was trying to follow the Getting Started with Digilent Pmod IPs Tutorial, but since I do not find any IP core for PMODNIC100 in Vivado 2015.4, I do not know how to proceed. Can you please guide me regarding how to send and receive data through the PMOD NIC100 ethernet connector?