<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.cncwiki.org/index.php?action=history&amp;feed=atom&amp;title=MicroNova_Mercury_2_FPGA_Development_Board</id>
	<title>MicroNova Mercury 2 FPGA Development Board - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.cncwiki.org/index.php?action=history&amp;feed=atom&amp;title=MicroNova_Mercury_2_FPGA_Development_Board"/>
	<link rel="alternate" type="text/html" href="https://www.cncwiki.org/index.php?title=MicroNova_Mercury_2_FPGA_Development_Board&amp;action=history"/>
	<updated>2026-05-01T16:48:55Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://www.cncwiki.org/index.php?title=MicroNova_Mercury_2_FPGA_Development_Board&amp;diff=425&amp;oldid=prev</id>
		<title>Fdarling: added Xilinx Vivado wiki link</title>
		<link rel="alternate" type="text/html" href="https://www.cncwiki.org/index.php?title=MicroNova_Mercury_2_FPGA_Development_Board&amp;diff=425&amp;oldid=prev"/>
		<updated>2021-04-09T10:39:02Z</updated>

		<summary type="html">&lt;p&gt;added Xilinx Vivado wiki link&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 10:39, 9 April 2021&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l9&quot;&gt;Line 9:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 9:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Design Software ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Design Software ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Xilinx Vivado&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Bitstreams are generated using [[&lt;/ins&gt;Xilinx Vivado&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] (the successor of [[Xilinx ISE]]).&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://www.micro-nova.com/mercury2-getting-started-guide Getting Started Guide - Mercury 2 — MicroNova]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://www.micro-nova.com/mercury2-getting-started-guide Getting Started Guide - Mercury 2 — MicroNova]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Fdarling</name></author>
	</entry>
	<entry>
		<id>https://www.cncwiki.org/index.php?title=MicroNova_Mercury_2_FPGA_Development_Board&amp;diff=424&amp;oldid=prev</id>
		<title>Fdarling: initial page creation</title>
		<link rel="alternate" type="text/html" href="https://www.cncwiki.org/index.php?title=MicroNova_Mercury_2_FPGA_Development_Board&amp;diff=424&amp;oldid=prev"/>
		<updated>2021-04-09T10:19:12Z</updated>

		<summary type="html">&lt;p&gt;initial page creation&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[File:MicroNova_Mercury_2_Stock_Photo_Front.jpg|thumb|MicroNova Mercury 2 (front)]]&lt;br /&gt;
&lt;br /&gt;
[[File:MicroNova_Mercury_2_Stock_Photo_Back.jpg|thumb|MicroNova Mercury 2 (back)]]&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
Xilinx Artix-7 FPGA development board. It can be programmed over USB with an on-board FTDI chip and a custom open source programming utility.&lt;br /&gt;
&lt;br /&gt;
== Design Software ==&lt;br /&gt;
&lt;br /&gt;
Xilinx Vivado&lt;br /&gt;
&lt;br /&gt;
[https://www.micro-nova.com/mercury2-getting-started-guide Getting Started Guide - Mercury 2 — MicroNova]&lt;br /&gt;
&lt;br /&gt;
== Bitstream Loader ==&lt;br /&gt;
&lt;br /&gt;
[https://www.micro-nova.com/mercury2-programmer Mercury 2 Programmer — MicroNova]&lt;br /&gt;
&lt;br /&gt;
[https://github.com/micro-nova/mercury2_prog micro-nova/mercury2_prog: Programmer app for the Mercury 2 FPGA board using FT2232H | GitHub]&lt;br /&gt;
&lt;br /&gt;
=== Linux ===&lt;br /&gt;
&lt;br /&gt;
On Linux, the default VCP (Virtual COM Port) driver will try and bind to the FTDI device. This causes issues, since the mercury2_prog utility is built with FTDI&amp;#039;s &amp;quot;D2xx&amp;quot; library, which in turn uses libusb1.0 to low level manipulate the device. The device must be unbound (not in use) by any other drivers for this to work. The device must also have permissions set for it to work as a normal user (non-root). To solve this, a script to unbind the device must be created, and a udev rule added to set permissions and invoke the script.&lt;br /&gt;
&lt;br /&gt;
Create (or edit) the script and set it as executable:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;sudo mkdir -p /etc/udev/scripts&lt;br /&gt;
sudo touch /etc/udev/scripts/unbind_ftdi.sh&lt;br /&gt;
sudo chmod a+x /etc/udev/scripts/unbind_ftdi.sh&lt;br /&gt;
sudo nano -w /etc/udev/scripts/unbind_ftdi.sh&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Place the following inside of the script:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;#!/bin/sh&lt;br /&gt;
&lt;br /&gt;
# traverse sysfs to find the USB ID&lt;br /&gt;
# of the USB device which is parent/ancestor of ttyUSB*&lt;br /&gt;
# something like &amp;quot;1-1.6:1.0&amp;quot;&lt;br /&gt;
TTYDEV=$(basename $DEVNAME)&lt;br /&gt;
BOUND_DEVICES=/sys/bus/usb/drivers/ftdi_sio/*/&lt;br /&gt;
for DEVICE in ${BOUND_DEVICES}; do&lt;br /&gt;
    if [ -e $DEVICE/$TTYDEV ]; then&lt;br /&gt;
        USBID=$(basename $DEVICE)&lt;br /&gt;
        break&lt;br /&gt;
    fi&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;$USBID&amp;quot; &amp;gt; /sys/bus/usb/drivers/ftdi_sio/unbind&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then save the file by pressing &amp;lt;code&amp;gt;CTRL+O&amp;lt;/code&amp;gt; to output the file to disk, &amp;lt;code&amp;gt;ENTER&amp;lt;/code&amp;gt; to confirm the filename, and then &amp;lt;code&amp;gt;CTRL+X&amp;lt;/code&amp;gt; to quit &amp;lt;code&amp;gt;nano&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Now create a udev rule file &amp;lt;code&amp;gt;/etc/udev/rules.d/99-mercury2.rules&amp;lt;/code&amp;gt; with the following contents:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;SUBSYSTEM==&amp;quot;usb&amp;quot;, ENV{DEVTYPE}==&amp;quot;usb_device&amp;quot;, ATTR{idVendor}==&amp;quot;0403&amp;quot;, ATTR{idProduct}==&amp;quot;6010&amp;quot;, MODE=&amp;quot;0666&amp;quot;&lt;br /&gt;
ACTION==&amp;quot;add&amp;quot;, SUBSYSTEMS==&amp;quot;usb&amp;quot;, ATTRS{idVendor}==&amp;quot;0403&amp;quot;, ATTRS{idProduct}==&amp;quot;6010&amp;quot;, KERNEL==&amp;quot;ttyUSB*&amp;quot; RUN+=&amp;quot;/etc/udev/scripts/unbind_ftdi.sh&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Script taken from Stack Exchange answer:&lt;br /&gt;
&lt;br /&gt;
[https://unix.stackexchange.com/questions/305439/blacklisting-removing-driver-for-a-particular-vid-pid/319398#319398 linux - Blacklisting / Removing driver for a particular VID/PID - Unix &amp;amp; Linux Stack Exchange]&lt;br /&gt;
&lt;br /&gt;
== Online Resources ==&lt;br /&gt;
&lt;br /&gt;
[https://www.micro-nova.com/mercury-2 Mercury 2 - Xilinx Artix-7 FPGA development board — MicroNova]&lt;br /&gt;
&lt;br /&gt;
[https://www.micro-nova.com/resources-mercury-2 Resources - Mercury 2 — MicroNova]&lt;br /&gt;
&lt;br /&gt;
https://www.micro-nova.com/s/Mercury2_reference_manual.pdf&lt;br /&gt;
&lt;br /&gt;
https://www.micro-nova.com/s/mercury2xdc.zip&lt;br /&gt;
&lt;br /&gt;
https://www.micro-nova.com/s/Mercury2_schematic.pdf&lt;/div&gt;</summary>
		<author><name>Fdarling</name></author>
	</entry>
</feed>