Welcome to the Digilent! Here you can find our latest news, videos, and product details. Additionally, you can engage with us in our forums.
Digilent, an NI company, has been at the forefront of innovation since 2000, crafting hardware and software solutions that empower engineers, researchers, educators, and scientists to design and test with unparalleled flexibility. Our customizable solutions cater to both seasoned professionals and emerging engineers, accelerating development while maintaining a low barrier to entry.
We're committed to accessibility, offering competitive pricing, portable products, and comprehensive documentation. With a global presence spanning three continents, Digilent ensures speedy and cost-effective access to our products through an extensive distribution network. Specializing in Xilinx-based FPGA development boards, USB-based test and measurement devices, a variety of expansion modules for customizing applications, and the respected MCC DAQ product line, our design philosophy champions your creativity. By emphasizing speed, modularity, customizability, world class support, and open-source principles, we provide the building blocks while you bring the brilliance.
The Pmod ESP32Pmod ESP32 provides an easy and cost-effective way to add wireless communication to any host platform or project. It uses the fully certified ESP-WROOM-32 Wi-Fi + BLE + BT module from Espressif Systems. Pmod ESP32Pmod ESP32 is suitable for a wide variety of applications, from low-power sensor networks to more demanding tasks such as music streaming. It was designed in collaboration with Renesas and is supported by all Renesas Synergy Platforms.
Key features:
Getting started with Pmod ESP32
What makes the module so effective is the pre-loaded AT instruction set firmware. the Pmod ESP32 doesn’t require the user to load or create their own network stack before using. A user just needs to plug in the Pmod, set the correct jumper settings and then write code on the host board to communicate over SPI or UART. In addition to the pre-loaded firmware, there are a wealth of examples and resources available at Digilent Wiki and Renesas
Who would use the Pmod ESP32?
Anyone who wants to add wireless capabilities to their project! The Pmod ESP32Pmod ESP32 is simple enough that it can be connected to an Arduino project and talked to in a few lines of code, but capable enough to be part of a design requiring remote data for complex algorithm development. It can serve as a wire-replacement or be reprogrammed to collect data and send it over to a computer. The capabilities of this Pmod can fit into most design applications.
The Arty A7-100TArty A7-100T contains a Xilinx XC7A100T FPGA which is the largest FPGA available for the Arty A7Arty A7 and is ideal for deployment of softcore processors. These processors can be either proprietary or open-source. One of the most popular open source processors is the RISC-V.
This tutorial covers building a RISC-V processor, specifically the SiFive Freedom E310 and steps through the process of loading the Freedom E310 onto an Arty A7, and programming it using the Arduino IDE.
Topics include:
Walk through the tutorial and create your RISC-V based application.
Now, you have access to a complete benchtop by combining the Analog Discovery 2’s oscilloscope, waveform generator, and logic analyzer with the RPi 4 small single-board computer.
The setup guide
Once the Raspberry Pi is all set up with the Raspbian Operating System the Analog Discovery 2 can be set up in 4 simple steps:
1. Download and Install the Adept Runtime for ARM
2. Download and install WaveForms for ARM
3. Connect the Analog Discovery 2Analog Discovery 2 to a USB 3 port and Open WaveForms
4. Select the Device and start taking measurements!
You can view the full instructions for installing WaveForms on the Raspberry PI 4 on the Digilent Wiki.
Digilent Basys MX3 Basys MX3 enables designers to quickly begin developing and debugging an embedded application. With an exhaustive set of peripherals plus Pmod expansion headers, you can create a wide range of embedded systems applications. The board also provides an easy and cost-effective introduction to the PIC32 microcontroller and MPLAB X Integrated Development Environment (IDE).
The most exciting feature is the in-depth that comes with it. This coursework, titled “Embedded Systems with the Basys MX3 and PIC32MX370,” is completely free, open-source, and completes a full walk-around of the board. With a total of 7 theoretical teaching units and 15 labs, “Embedded Systems with the Basys MX3 and PIC32MX370” is meaty enough to teach every enthusiast all that they need about embedded systems.Below you’ll find a breakdown of the coursework and the concepts and skills each unit/lab targets.
Example data flow diagram from Unit 1.
Right from the get-go, you will start getting familiar with the PIC32MX370 hardware by programming registers and creating a hardware configuration file. Data flow and control flow diagrams are used as part of project planning and to teach best design practices, including when and how to test. If you aren’t familiar with the MPLAB X software or need to brush up on programming in C, links to various tutorials are included. Some key takeaways for the creators are:
The concepts discussed in Unit 1 are put into practice here by requiring you to write a program that uses the onboard switches to control the onboard RGB LED according to specified design requirements. As a student, you become familiar with read-modify-write operations to control the PIC32MX370 registers.
The skills acquired in Lab 1a are extended to require you to create a simple calculator using the onboard switches, buttons and seven-segment display (SSD). You are introduced to timing through the use of software delay to achieve persistence of vision on the SSD, as well as atomic bit manipulation and bit-banging techniques.
PIC32 interrupt handler block diagram from Unit 2.
Through the classic example application of controlling the rotor speed of a stepper motor, this unit investigates the concepts of multi-threaded process time management for a real-time dynamic system, using foreground-background task scheduling. Counter/timer hardware is discussed in some detail. Some of the key takeaways are:
Adapting the code previously used in Lab 1a and 1b, you are required to display the state of the onboard push buttons on the onboard LEDs using debouncing techniques, change notification interrupts and polling.
Extending the skills acquired in Lab 2a, you need to control the mode and direction of a stepper motor using the pushbuttons, control the speed of the stepper motor using the slide switches, and display the speed of the motor on the SSD.
Example timing diagram for four-phase handshaking from Unit 3.
In Unit 3, you will be introduced to digital communication by displaying static and dynamic data on the onboard parallel LCD. You will learn to translate timing diagrams provided by target equipment data sheets into timed sequences of program instructions, how to use ASCII encoded data, as well as experiment with the mechanisms required to synchronize asynchronous systems using hardware and software handshaking. Some of the key takeaways are:
Using direct IO control through bit-banging, you will develop and test a library of functions that allow text to be placed at any position on the onboard parallel I/O character LCD, following the data flow and control flow diagram models presented in Unit 3.
Using IO control through the parallel master port (PMP), you will develop and test a library of functions that allow text to be placed at any position on the onboard parallel I/O character LCD, following the data flow and control flow diagram models presented in Unit 3.
Example parallel multiple slave SPI bus configuration with individual device select signals from lab 4c.
Unit 4 consists of two parts. Part 1 contains an overview that addresses different high-level views of digital communications including synchronous vs asynchronous and networking. Part 2 further addresses asynchronous communications protocols, specifically the Universal Asynchronous Receiver Transmitter (UART) protocol. Some key takeaways from Part 1 and Part 2 combined are:
You will call on your experience with controlling a stepper motor from Lab 2a, only this time the motor will be controlled from a PC terminal via UART. Serial communications will be displayed on both the PC terminal using a terminal emulation program and the LCD onboard the Basys MX3Basys MX3.
Lab 4b requires all of the elements of software code developed and hardware used in previous labs. The learner will extend the knowledge gained in Lab 4a by specifying a system that is capable of two independent control and monitoring locations, which is common to many industrial applications.
You will develop a software system that allows the PIC32MX370 to write an arbitrary number of 8-bit bytes to an arbitrary address location in the SPI flash memory device. The stored data must also be read back to determine if the data read matches the data written.
Using I2C communications, you will be able to program the PIC32MX370 processor to periodically read the physical orientation data from the onboard 3-Axis accelerometer and display the information on a character LCD and send a text stream to a computer terminal.
Schematic diagram of PIC32 connection to the onboard infrared module.
This unit demonstrates how to use interrupts and the core timer to decode two IrDA protocols, in an effort to teach approaches for decoding different IrDA protocols used for remote device control. The IrDA is the only implementation of wireless communications included in this coursework, as well as the only unit requiring the use of the Analog Discovery 2 (or similar instrument). Some of the key takeaways are:
The format of this lab differs from the rest in this series in that the hardware is not entirely specified. You are intended to use an IR remote control device of your own choosing and to analyze the IrDA signal to generate an application that can exchange IrDA messages with that device.
Example motor and tachometer wiring for Unit 6 (use of the Analog Discovery 2 is recommended but not required).
Unit 6 will teach you how to work with analog signals. The purpose of this unit is to investigate applications of embedded controllers to real-time control algorithms that employ analog inputs and analog outputs. You will use a computer algorithm to implement a closed-loop processor for motor speed control and see how feedback can be used to linearize an inherently nonlinear process and result in zero steady-state control error. Some of the key takeaways are:
This lab focuses on open-loop control. You will use the potentiometer labeled Analog Control Input onboard the Basys MX3Basys MX3 to set the percent PWM to operate the speed of the motor from 0 rpm to the maximum the motor can achieve given the motor performance and the supply voltage.
Building upon Lab 6a, Lab 6b introduces closed-loop control by implementing a digital PI controller. The tachometer frequency will be measured by using the Input Capture of the PIC32 to determine the signal period which is then inverted to yield the frequency.
Plot of outputs of the four example filters to a 1 kHz input sine wave used in Unit 7.
This unit focuses on processing signals in the audio frequency range using digital signal processing (DSP) concepts with the PIC32MX370 microprocessor. Both a method of generating multiple frequency signals without using transcendental functions or lookup tables and Discrete Fourier Transforms (DFT) to detect the presence of signals will be used. It is not the purpose of this unit to teach you the theory of digital filtering, but rather to teach how to implement digital filtering using a conventional microprocessor in lieu of specialized digital signal processors. Some of the key takeaways are:
This lab requires much of the code written for previously labs and adds use of the onboard speaker and microphone. You will be able to create a digital sine wave generator capable of synthesizing eight constant amplitude signals at specified frequencies. The frequency of the sine waves will be selected by setting one of the eight slide switches. The audible output will be enabled and the frequency displayed on the 4-digit 7-segment display for five seconds when BTND is pressed. The LCD will display the frequency of the selected sine wave.
Adding to Lab 7a, the lab series culminates in creating a spectrum analyzer using the Discrete Fourier Transform. You will experience how to use of the Fast Fourier Transform and MIPS DSP library greatly reduces execution time.
With the AMS CCS811 gas sensor, you can detect a wide range of Volatile Organic Compounds (VOCs) using the micro-hotplate technology, enabling a highly reliable solution for gas sensors with very fast cycle times.
Pmod AQSPmod AQS can be used in multiple target application like home controllers, smart thermostats and even air cleaners and purifiers.
Key Features:
Make sure to go check out the Pmod AQSPmod AQS and add it to your next order.
Start verifying and testing a wide range of projects with the Analog Discovery 2 Pro Bundle. With the addition of the BNC adapter and scope probes, professional or experienced engineers can access the full 30MHz bandwidth oscilloscope and 12MHz bandwidth waveform generator.
Analog Discovery 2 Pro Bundle Includes:
Digilent Analog Discovery 2 is a USB oscilloscope and multi-function instrument that allows users to measure, visualize, generate, record, and control mixed-signal circuits of all kinds. Analog Discovery 2 is small enough to fit in your pocket, but powerful enough to replace a stack of lab equipment, providing engineering students, hobbyists, and electronics enthusiasts the freedom to work with analog and digital circuits in virtually any environment, in or out of the lab. Driven by the free WaveForms (Mac, Linux and Windows Compatible) software, Analog Discovery 2 can be configured to work as anyone of several traditional instruments including an Oscilloscope, Waveform Generator, Power Supply, Voltmeter, Data Logger, Logic Analyzer, Pattern Generator, Static I/O, Spectrum Analyzer, Network Analyzer, Impedance Analyzer, and Protocol Analyzer.
BNC Adapter for Analog Discovery 2
The BNC Adapter Board for the Analog Discovery 2 is intended to be used with the Analog Discovery 2 tool to enable the use of standard BNC-terminated test leads and probes. It provides BNC terminations to each of the two oscilloscope channels on the Analog Discovery 2. Each channel of the oscilloscope can be selected as AC or DC coupled by adjusting the jumper that is located behind that channel's BNC input connector. In addition, the two AWG channels are also equipped with BNC terminations, and each channel can have either the 50-ohm or the 0-ohm termination selected. This enables the user to match the Analog Discovery 2's output impedance with either standard 50-ohm test leads or to be directly tied to the lead.
BNC Oscilloscope x1/x10 Probes (Pair)
A pair of BNC-terminated oscilloscope probes, perfect for use with the Analog Discovery 2 in conjunction with the BNC Adapter Board for the Analog Discovery 2.
Mini Grabber Test Clips (6-pack) for use with Instrumentation Flywires
These micro-hook test clips allow the Analog Discovery 2 signal wires to be connected to component leads, wires, and other circuit components. The spring-action clips use two-lead pincers to grab onto conductors up to 1.27mm in diameter. When released, the pincers hold tightly for good electrical contact.
Embedded Vision on Digilent Zybo Z7Zybo Z7, Xilinx Zynq SoC Platform
Digilent host student design contest every year. The contest provides an opportunity to inspire future engineers in Europe. As we know, the automotive industry is leaning towards self-driving cars. The technology is evolving, and new sustainable and innovative tracking systems are created to make the road (and the passengers) safer. A student team from Transylvania University of Brasov leverage the power of Xilinx Zynq SoC and Digilent PCAMPCAM, 5MP camera sensor to create an Infra-Red Image Processing Unit. The team wants to use infra-red technology as a safe alternative to other types of detecting radars.
Let’s dive in and see how the project came to life.
Required Parts
The control platform for the Infra-Red processing unit is Digilent Zybo Z7Zybo Z7, Xilinx Zynq SoC Platform. The Zybo Zybo Z7's video-capable feature set, including a MIPI CSI-2 compatible PcamPcam connector, HDMI input, HDMI output, and high DDR3L bandwidth makes it as the perfect platform for the project. In addition, the student used an OV5647 night vision camera.
Hardware and Software Design
The team modify the embedded vision project example provided by Digilent. What they did was to add a second Video Direct Memory Access (VDMA) instance to split the screen to show both of the unprocessed image and the processed one. The interrupt for this handler is generated by the ir_filters module, at each end of the processed frame.
By doing so, the team made the Direct Memory Access (DMAs) as two circular buffers. This makes the buffer frame number increase and have a bigger gap between the read and write pointer. In that gap, the with memcpy instruction the original image is copied and overwrites the half of the processed one. The copy action must be completed before the read pointer gets to that memory zone. To make sure the read pointer will not be faster than the copy action, both read and write pointers where parked at the current buffer frame until the overwriting is completed. At the same time, the interrupt is disabled.
Algorithms implemented
•Dead/stuck pixel correction
•Median filter
•Edge detection
•Image smoothing
•Image sharpening
Did you like the project?
Discover more interesting projects made by students, using Zybo Z7Zybo Z7 and other Digilent devices, on https://digilentdesigncontest.com.
The community, consisting of students and professors replied with a positive feedback. The project is complex, and it had a lot of effort put into it. Just by understanding a flow of an existing project and extending it both hardware and software side is challenging, but it is always easier to do something from scratch.
Other big point is the interfacing of the Raspberry Pi camera. These products are widely spread in the market and the Raspberry Pi has a lot of different cameras with different resolutions, color space, functionalities. This project showcases that it is possible to connect any commercial camera with CSI-2 standard connector to the Zybo Z7Zybo Z7 board and make functional and innovative projects.
The architecture part is extensible the algorithm showcased are relatively simple ones, used today in preprocessing techniques for some beefy algorithm based on neural network for different type of detections mostly. But it is possible to replace or add an existing block to some more complicated algorithm.
Engineers and electronics enthusiasts listen up as the OpenScope MZ has officially launched at Digilent! The OpenScope MZ was announced on Kickstarter in January 2017 as an addition to the Digilent line of Instrumentation and remains their only open-sourced Instrumentation device to help debug on the go. This portable, open source, multi-function programmable instrument can be used for capturing, visualizing, and controlling analog and digital signals for a multitude of engineering projects. Built around the Microchip PIC32MZ2048EF processor, users can connect their OpenScope device to a computer via USB or dial in remotely to a smartphone via WiFi to debug or visualize electronics projects of all shapes and sizes.
If you are new to Instrumentation solutions, the OpenScope is a perfect choice for learning about signals from circuits, sensors, and other electronic devices. New users can begin with the free "Getting Started Guide" which runs readers through setting up their OpenScope, updating its firmware, calibrating the device, and taking their first measurement. Following device setup, OpenScope users can review a number of tutorials with video and textual support to accommodate different learning styles. Many of these tutorials also support the free applications software, WaveForms Live, which runs in a web based browser or can downloaded for use with Mac, Windows, Linux, iOS or Android systems. WaveForms Live is also built on a common web frame works with developer APIs provided for those who wish to modify the UI.
The OpenScope MZ hardware + Waveforms Live can help any engineer or hobbyist turn their computer into the following instruments: Oscilloscope, Waveform Generator, Logic Analyzer, Power Supply and Data Logger. All of these tools can be run over Wi-Fi from the OpenScope MZ to your computer or mobile device, providing immense flexibility for project debugging. Whether you're a beginner looking for an introduction to Instrumentation, or someone searching for an on-the-go, wireless tool, the OpenScope MZ can meet many of your circuit analysis needs.
OpenScope MZ Hardware Specifications and Key Features:
Test drive the software at www.waveformslive.com and browse the collection of reference materials on the Digilent Wiki before completing your home tool kit with the OpenScope MZOpenScope MZ.
As a student or professional engineer it is important to pay attention to where your resources are being allocated. Time spent traveling to and from laboratories fixing minor embedded systems project issues is often disregarded for the sake of project completion, but can be avoided altogether with the right benchtop tools. One recently released solution is the Digital DiscoveryDigital Discovery, a portable logic analyzer, digital pattern generator and protocol analyzer. This hardware can help engineers shorten project timelines and extend financial resources as a high-speed tool for debugging digital signal projects on-the-go or from the comfort of home. In this blog post I will cover important resources provided by the creators of the Digital Discovery and show you how to get this device up and running with your embedded projects in no time.
Introduction to the Digital Discovery
Earlier this year Digilent released the Digital Discovery as an addition to their Instrumentation line. The Digital Discovery shares the same form factor as the popular Analog Discovery 2Analog Discovery 2, with significant improvements in digital signal monitoring capabilities. Compatible with the free WaveForms 2015 software toolset (offered for most Digilent Instrumentation devices), the Digital Discovery provides users with six tools ideal for digital signal analysis. Removing the analog specific tools allowed the hardware engineers to increase the number of channels and sample rates available, while using the same Xilinx Spartan 6 FPGA found on the Analog Discovery 2. With a selectable logic high level, 32 possible channels and up to 800 MS/s*, this new hardware provides greater flexibility to users working on any digital signal design project.
*Note: Increased sampling rates can only be achieved while using the High Speed AdapterHigh Speed Adapter and Logic ProbesLogic Probes.
Installing WaveForms 2015
One of the best features of this new hardware is the current documentation and easy setup. This documentation is easy to find on the Digital Discovery’s product page under the “Support Materials” menu. Clicking on the “Resource Center” button redirects users to Digilent’s Digital Discovery documentation page where readers can find additional product information, reference manuals, technical support, and (in my opinion the most important) “Getting Started” button.
Clicking on the “Getting Started” button presents three different guides for setting up WaveForms 2015 with Windows, Linux, and MAC operating systems. After choosing your operating system, you are redirected to a tutorial that covers everything from software installation to taking your first measurement. The installation process takes only a couple of minutes and then you are ready to connect your device and explore the six tools in the navigation bar (found on the left side of the screen).
Getting Started with the Digital Discovery
With WaveForms 2015 up and running, you can quickly begin debugging embedded projects from your desk. Simply connect your device to your computer and select “DDiscovery” (followed by your serial number) from the device manager. With your device now open in WaveForms, you are ready to use any of the available tools to take your first digital measurement!
Whether you have some experience or you are still learning about portable instrumentation devices, you can find detailed tutorials explaining how to use each tool offered in WaveForms on the Digilent documentation website. Without a specific project in mind, users can also refer to community projects listed under the “Example Projects” section. One project by Instructables member Brmarcum does an excellent job of showing readers how the Digital Discovery is used to monitor a 7-segment display circuit. This project includes detailed descriptions and clear photos that demonstrate the circuit build and how to connect your Digital Discovery. Brmarcum describes how pins 0-10 are connected and used with the logic analyzer tool to monitor the digital signals and draw project conclusions.
Another excellent project steps through how the Digital Discovery and High Speed Adapter are used to decode a VGA signal from an FPGA. In this project, Instructables member Commanderfranz uses this device to check whether the VGA signals are being sent correctly and how they affect the final image. Again, pictures and detailed instructions for setting up the Digital Discovery probes are provided to help readers replicate the project at home.
Additional Resources and Projects
When starting with the Digital Discovery users can find a handful of free resources like the projects summarized above on the Digilent documentation website. Device users who experience difficulty can also find technical support on the Digilent Forum from community members who offer helpful project suggestions or solutions. Whether you’re an embedded developer looking to troubleshoot designs or a student progressing through upper level coursework, the Digital Discovery is a great new tool to help with digital signal projects.
You can also look forward to the arrival of useful resources and additional support as the upcoming element14 RoadTesters review their experience!