{"id":32215,"date":"2026-03-17T09:32:04","date_gmt":"2026-03-17T16:32:04","guid":{"rendered":"https:\/\/digilent.com\/blog\/?p=32215"},"modified":"2026-03-27T10:19:13","modified_gmt":"2026-03-27T17:19:13","slug":"the-waveforms-fpga-utility","status":"publish","type":"post","link":"https:\/\/digilent.com\/blog\/the-waveforms-fpga-utility\/","title":{"rendered":"The WaveForms FPGA Utility"},"content":{"rendered":"<p><span data-contrast=\"auto\">Digilent\u2019s WaveForms software includes a small built-in FPGA utility, which is used to configure (program) the FPGA on supported Digilent boards directly from within WaveForms. If you\u2019ve been around for a while, this is essentially the same core technology as what was formerly the standalone Digilent Adept GUI.\u00a0<\/span><span data-ccp-props=\"{}\"><\/span><\/p>\n<hr \/>\n<h3 aria-level=\"2\"><span data-contrast=\"none\">What the FPGA Utility Actually Is<\/span><span data-ccp-props=\"{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;335559738&quot;:160,&quot;335559739&quot;:80}\">\u00a0<\/span><\/h3>\n<p>WaveForms\u00a0includes an\u00a0<strong>FPGA configuration\/programming\u00a0tool<\/strong>\u00a0that uses the\u00a0<strong>Digilent\u00a0Adept Runtime<\/strong>\u00a0under the hood. This tool:<\/p>\n<ul>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"4\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\">Loads\u00a0.bit\u00a0FPGA configuration files\u00a0to\u00a0Digilent\u00a0FPGA boards<\/li>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"4\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Programs the FPGA over USB using the board\u2019s\u00a0Digilent\u00a0USBJTAG interface<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"4\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Extends\u00a0Adept\u00a0support from\u00a0Windows-only\u00a0to also\u00a0include all standard\u00a0OSes\u00a0WaveForms\u00a0supports<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"4\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Provides basic status information (device detected, programming success\/failure)<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"4\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Requires no\u00a0AMD\u00a0tools\u00a0(Vivado)\u00a0to be open, or even installed<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<ul><\/ul>\n<ul><\/ul>\n<ul><\/ul>\n<p><span data-contrast=\"auto\">This is essentially a lightweight version of the Vivado Hardware Manager, integrated into WaveForms, so you can program the FPGA on boards like the Nexys A7, Basys 3, Arty A7, Zybo\/Zybo Z7, or others.<\/span><span data-ccp-props=\"{&quot;469777462&quot;:[720],&quot;469777927&quot;:[0],&quot;469777928&quot;:[8]}\">\u00a0<\/span><\/p>\n<hr \/>\n<h3 aria-level=\"2\"><span data-contrast=\"none\">What It\u00a0<\/span><i><span data-contrast=\"none\">Does Not<\/span><\/i><span data-contrast=\"none\">\u00a0Do<\/span><span data-ccp-props=\"{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;335559738&quot;:160,&quot;335559739&quot;:80}\">\u00a0<\/span><\/h3>\n<p><span data-contrast=\"auto\">The FPGA utility in\u00a0WaveForms\u00a0<\/span><b><span data-contrast=\"auto\">does not<\/span><\/b><span data-contrast=\"auto\">:<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<ul>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Replace\u00a0Vivado\u00a0or\u00a0Vitis<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Synthesize or compile HDL<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Provide debugging tools like ILAs<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Modify\u00a0the\u00a0flash memory\u00a0on an FPGA board<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<li aria-setsize=\"-1\" data-leveltext=\"\uf0b7\" data-font=\"Symbol\" data-listid=\"1\" data-list-defn-props=\"{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;\uf0b7&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}\" data-aria-posinset=\"1\" data-aria-level=\"1\"><span data-contrast=\"auto\">Expose the FPGA on products that\u00a0aren\u2019t\u00a0development\u00a0boards\u00a0or\u00a0program\u00a0boards\u00a0not\u00a0produced\u00a0by\u00a0Digilent<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/li>\n<\/ul>\n<ul><\/ul>\n<ul><\/ul>\n<ul><\/ul>\n<ul><\/ul>\n<p><span data-contrast=\"auto\">It is strictly a\u00a0<\/span><b><span data-contrast=\"auto\">programming\/configuration tool<\/span><\/b><span data-contrast=\"auto\">, not a development environment.<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<hr \/>\n<h3 aria-level=\"2\"><span data-contrast=\"none\">Why It Exists<\/span><span data-ccp-props=\"{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;335559738&quot;:160,&quot;335559739&quot;:80}\">\u00a0<\/span><\/h3>\n<p><span data-contrast=\"auto\">Digilent\u00a0used to include this functionality through a standalone Adept application. When this application was deprecated, the functionality was rolled into\u00a0WaveForms\u00a0to make sure that users could still access its set of features.<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">The Adept\u00a0<\/span><i><span data-contrast=\"auto\">Runtime<\/span><\/i><span data-contrast=\"auto\">\u00a0(as opposed to the\u00a0deprecated\u00a0GUI)\u00a0is\u00a0a unified software layer managing USB communication and programming of\u00a0Digilent\u00a0products\u00a0and\u00a0gets bundled\u00a0with\u00a0WaveForms\u00a0so that the FPGAs on\u00a0Digilent\u00a0test and measurement devices like the AD3 can be properly handled\u00a0by the\u00a0WaveForms\u00a0device manager in the background. The FPGA Utility exposes some of the\u00a0Adept Runtime\u2019s\u00a0functionality and allows\u00a0users\u00a0to quickly program their FPGA boards.<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">Find the FPGA Utility at the bottom of the instrument list on\u00a0WaveForms\u2019\u00a0welcome screen:<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><span data-ccp-props=\"{}\"> <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/1-600x338.png\" alt=\"\" width=\"600\" height=\"338\" class=\"alignnone size-medium wp-image-32216\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/1-600x338.png 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/1-1024x578.png 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/1-1536x867.png 1536w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/1-2048x1155.png 2048w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/span><\/p>\n<p><span data-contrast=\"auto\">With a board plugged in, it should appear. If it\u00a0doesn\u2019t, refresh the device list\u00a0(1):<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><span data-ccp-props=\"{}\"> <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/2-600x336.png\" alt=\"\" width=\"600\" height=\"336\" class=\"alignnone size-medium wp-image-32218\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/2-600x336.png 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/2-1024x574.png 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/2-1536x860.png 1536w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/2.png 1971w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/span><\/p>\n<p><span data-contrast=\"auto\">Pick a bitstream via Browse (2, and below), and program the board by clicking the Program\u00a0button, (3).<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><span data-ccp-props=\"{}\"> <img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/3-600x269.png\" alt=\"\" width=\"600\" height=\"269\" class=\"alignnone size-medium wp-image-32219\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/3-600x269.png 600w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/3-1024x460.png 1024w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/3-1536x689.png 1536w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/02\/3-2048x919.png 2048w\" sizes=\"auto, (max-width: 600px) 100vw, 600px\" \/><\/span><\/p>\n<p><span data-contrast=\"auto\">That\u2019s\u00a0all it takes, and a\u00a0WaveForms\u00a0download can be up and running on your system from scratch in under five minutes. Find out more about\u00a0WaveForms\u00a0and try the FPGA Utility for yourself on its resource center on the\u00a0Digilent\u00a0Reference site:\u00a0<\/span><a href=\"https:\/\/digilent.com\/reference\/software\/waveforms\/waveforms-3\/start\"><span data-contrast=\"none\">WaveForms &#8211; Digilent Reference<\/span><\/a><span data-contrast=\"auto\">.<\/span><span data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<div class='watch-action'><div class='watch-position align-left'><div class='action-like'><a class='lbg-style6 like-32215 jlk' data-task='like' data-post_id='32215' data-nonce='05046dc8ab' rel='nofollow'><img src='https:\/\/digilent.com\/blog\/wp-content\/plugins\/wti-like-post-pro\/images\/pixel.gif' title='Like' \/><span class='lc-32215 lc'>0<\/span><\/a><\/div><div class='action-unlike'><a class='unlbg-style6 unlike-32215 jlk' data-task='unlike' data-post_id='32215' data-nonce='05046dc8ab' rel='nofollow'><img src='https:\/\/digilent.com\/blog\/wp-content\/plugins\/wti-like-post-pro\/images\/pixel.gif' title='Unlike' \/><span class='unlc-32215 unlc'>0<\/span><\/a><\/div><\/div> <div class='status-32215 status align-left'>Be the 1st to vote.<\/div><\/div><div class='wti-clear'><\/div>","protected":false},"excerpt":{"rendered":"<p>Digilent\u2019s WaveForms software includes a small built-in FPGA utility, which is used to configure (program) the FPGA on supported Digilent boards directly from within WaveForms. If you\u2019ve been around for &hellip; <\/p>\n","protected":false},"author":52,"featured_media":32280,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[20,4323,35],"tags":[5267,1662,5268,5266,5269,452],"ppma_author":[4462],"class_list":["post-32215","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-products","category-software","category-fpga","tag-configuration","tag-fpga","tag-fpga-utility","tag-programming","tag-usb","tag-waveforms"],"jetpack_featured_media_url":"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2026\/03\/WaveForms_FPGA_Utility-735x400-1.png","authors":[{"term_id":4462,"user_id":52,"is_guest":0,"slug":"abrown","display_name":"Arthur Brown","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/60e7f8e1b3a55e2e20ee541df1f393c2acbcee9fd05fd3e38d07e25a2e6fd237?s=96&d=mm&r=g","1":"","2":"","3":"","4":"","5":"","6":"","7":"","8":"","9":"","10":""}],"post_mailing_queue_ids":[],"_links":{"self":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts\/32215","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/users\/52"}],"replies":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/comments?post=32215"}],"version-history":[{"count":5,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts\/32215\/revisions"}],"predecessor-version":[{"id":32275,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts\/32215\/revisions\/32275"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/media\/32280"}],"wp:attachment":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/media?parent=32215"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/categories?post=32215"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/tags?post=32215"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=32215"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}