ARDUINO MKR VIDOR 4000 brings the ease of use of Arduino to work with the most powerful reprogrammable chips in existence: FPGAs. With Vidor you can create a board where all the pins are PWM signals that control the speed of the motors. You can capture sound in real time and create a sound effect pedal for your guitar. You can create a real-time computer by reading the sensor information and sending it to a state-of-the-art monitor, or capture video and overlay the sensor information on the image that will later be sent to a screen. You can connect to the Arduino IoT Cloud and control a complex lab machine running a large number of motors. You could even prototype your own processors inside the FPGA and run it in parallel with the other microcontroller on the board. Vidor is a device that invites experimentation, precision, and high-speed computing.
The main chip on the board is Intel® Cyclone® 10CL016; it contains 16K logic elements, 504 KB of embedded RAM, and 56 18x18-bit HW multipliers for high-speed DSP operations. Each pin can switch at over 150 MHz and can be configured for functions such as UART, (Q) SPI, high resolution/high frequency PWM, quadrature encoder, I2C, I2S, Sigma Delta DAC, etc. The board comes with 8 MB of SRAM to support FPGA operations on video and audio. The FPGA code is stored in a 2 MB QSPI Flash chip, of which 1 MB is allocated for user applications. High-speed DSP operations can be performed for audio and video processing. Therefore, Vidor includes a Micro HDMI connector for audio and video output and a MIPI camera connector for video input. All pins on the board are driven by both SAMD21 and FPGAs, in keeping with the MKR family format. Finally, there is a Mini PCI Express connector with up to 25 user-programmable pins, which can be used to connect your FPGA as a peripheral to a computer or to create your own PCI interfaces. The board's microcontroller is a low-power 32-bit Arm® Cortex®-M0 SAMD21, as in the other boards in the Arduino MKR family. WiFi and Bluetooth® connectivity is performed with a module from u-blox, the NINA-W10, a low-power chipset operating in the 2.4 GHz range. In addition, secure communication is provided by Microchip®'s ECC508 cryptographic chip. On top of that, you can find a battery charger and a swiveling RGB LED on board.
If you're not familiar with the term, an FPGA is a Field Programmable Gate Array, a chip in which the logic that controls its operations is not written at the time of manufacture. You can write your own CPU, a set of dedicated high-frequency PWM outputs, a digital audio mixer, a video overlay machine, or anything you can imagine. The main limitation is the amount of logic gates needed to design any of these applications. To exemplify how such a powerful processor can be integrated into the typical Arduino workflow, in addition Arduino has created a set of libraries that can perform some simple tasks that incorporate the microcontroller and specialized FPGA code.
If you're an experienced FPGA developer, you'll be happy to know that Arduino has released a number of libraries that provide much of the basic functionality you need for your projects. You can check out this group of Github repositories containing all the open source Vidor code that Arduino has created.
Arduino has made connecting to a WiFi network as easy as flashing an LED. You can have your board connect to any existing WiFi network or use it to create your own Arduino access point.
The communication chipset on the MKR Vidor 4000 can be both a BLE client and a Bluetooth® host device. Something quite unique in the world of microcontroller platforms. If you want to see how easy it is to create a Bluetooth® power plant or peripheral device.
MKR Vidor 4000 is a multi-processor device that invites experimentation. Hacking the WiFiNINA module allows you, for example, to use WiFi and BLE / Bluetooth® simultaneously on the board. Another possibility is to have a super lightweight version of Linux running on the module, while the main microcontroller controls low-level devices such as motors or screens. These experimental techniques require advanced hacking on your side. They are possible by modifying the module's firmware.
WARNING: this kind of hacking breaks the certification of your WiFiNINA module, do it at your own risk.
Its USB port can be used to provide power (5V) to the board. It has a Li-Po charging circuit that allows the Arduino MKR Vidor 4000 to run on battery power or an external 5 volt source, charging the Li-Po battery while running on external power. Switching between sources is done automatically.