{"id":18707,"date":"2017-02-08T10:00:36","date_gmt":"2017-02-08T18:00:36","guid":{"rendered":"https:\/\/blog.digilentinc.com\/?p=18707"},"modified":"2021-06-11T10:44:21","modified_gmt":"2021-06-11T17:44:21","slug":"creating-a-raspberry-pi-universal-remote-using-labview","status":"publish","type":"post","link":"https:\/\/digilent.com\/blog\/creating-a-raspberry-pi-universal-remote-using-labview\/","title":{"rendered":"Creating a Raspberry PI Universal Remote Using LabVIEW"},"content":{"rendered":"<p>In my previous blog posts &#8220;<a href=\"https:\/\/digilent.com\/blog\/using-a-raspberry-pi-as-a-universal-remote\/\">Using a Raspberry Pi as a Universal Remote<\/a>,&#8221; I talk about a program called <a href=\"http:\/\/www.lirc.org\">LIRC<\/a> (LINUX Infrared Remote Control) and how I used it to turn my <a href=\"https:\/\/digilent.com\/shop\/raspberry-pi-2\/\">Raspberry Pi<\/a> into a universal remote. One common complaint about LIRC is its user interface, even setting it up can be a daunting process for someone that is unfamiliar with Linux. That is why I decided to use\u00a0<a href=\"https:\/\/digilent.com\/shop\/labview-home-bundle\/\">LabVIEW<\/a> to create a\u00a0graphical interface for LIRC. My LabVIEW VI&#8217;s make it easy to set up and edit remote profiles. Sending remote signals is also much easier as well, you can now pick from your available remotes and remote buttons and send the command from your computer or tablet. In this post, I will walk you through my LIRC VI&#8217;s.<\/p>\n<p><strong>Add VI<\/strong><\/p>\n<p>The Add VI allows users to add remote profiles from the LIRC <a href=\"http:\/\/lirc.sourceforge.net\/remotes\/\">index of remotes<\/a>\u00a0which contains hundreds of remote profiles. This VI lets users choose whether they want to &#8220;Create New Remote file&#8221; or \u00a0&#8220;Add New Remote to file.&#8221; The difference is that when you create a new remote profile, you will overwrite the current LIRC config file and delete any previously added remote profiles.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-18521 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/12\/Add.gif\" alt=\"\" width=\"420\" height=\"450\" \/><\/p>\n<p><strong>Record VI<\/strong><\/p>\n<p>The Record VI allows you to create remote profiles for remotes that can&#8217;t be found in the LIRC database.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-18520 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/12\/Record.gif\" alt=\"\" width=\"420\" height=\"450\" \/><\/p>\n<p>This VI can also be used\u00a0to edit remote profiles. Users can delete, edit, and add to a remote&#8217;s buttons or you can just remove the remote all together.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-18695 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2017\/01\/Record_edit-2.gif\" alt=\"\" width=\"360\" height=\"385\" \/><\/p>\n<p><strong>Remote Replacement VI<\/strong><\/p>\n<p>The Replace Remote VI allows a user to replace a lost or broken remote with an already configured remote. A switch at the bottom of the VI can be changed to true if you want all of your programmed remotes to be able to control this device.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-18523 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2017\/01\/Replace_remote.gif\" alt=\"\" width=\"420\" height=\"450\" \/><\/p>\n<p><strong>Send VI<\/strong><\/p>\n<p>The Send VI allows a user to send a\u00a0preprogrammed infra-red commands, an indicator on the left shows all of the buttons for each of the remotes. Once a remote has been selected its available buttons will be offered in the &#8220;Buttons&#8221; drop-down menu.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-18517 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2016\/12\/Send.gif\" alt=\"\" width=\"420\" height=\"450\" \/><\/p>\n<p><strong>Send Application<\/strong><\/p>\n<p>The Send_app VI is similar to the Send VI except it allows users to control their Raspberry Pi universal remote from a tablet using <a href=\"http:\/\/www.ni.com\/tutorial\/13757\/en\/\">Data Dashboard<\/a>. This VI can be set to run at start-up so it doesn&#8217;t need to be deployed each time before it could be used.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"size-medium wp-image-18596 aligncenter\" src=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2017\/01\/Screenshot_2017-01-04-14-26-42-352x600.png\" alt=\"\" width=\"352\" height=\"600\" srcset=\"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2017\/01\/Screenshot_2017-01-04-14-26-42-352x600.png 352w, https:\/\/digilent.com\/blog\/wp-content\/uploads\/2017\/01\/Screenshot_2017-01-04-14-26-42.png 600w\" sizes=\"auto, (max-width: 352px) 100vw, 352px\" \/><\/p>\n<p>Thank you for reading my blog post, check out my\u00a0<a href=\"http:\/\/www.instructables.com\/id\/Creating-a-Raspberry-Pi-Universal-Remote-With-LIRC\/\">Instructable<\/a>\u00a0where I give step by step instructions. If you are interested in making project yourself but don&#8217;t have the right supplies, you can purchase the LabVIEW computing kit for the <a href=\"https:\/\/digilent.com\/shop\/raspberry-pi-2\/\">Raspberry Pi 2<\/a>. This kit includes a copy of\u00a0<a href=\"https:\/\/digilent.com\/shop\/labview-home-bundle\/\">LabVIEW 2014 home edition<\/a>\u00a0and everything you will need to run\u00a0<a href=\"https:\/\/www.labviewmakerhub.com\/doku.php?id=learn:tutorials:libraries:linx:3-0:beaglebone-black-setup\">LINX 3.0<\/a>\u00a0and start making projects. Please comment with any questions or comments you may have.<\/p>\n<div class='watch-action'><div class='watch-position align-left'><div class='action-like'><a class='lbg-style6 like-18707 jlk' data-task='like' data-post_id='18707' data-nonce='4d1b41d1d7' rel='nofollow'><img src='https:\/\/digilent.com\/blog\/wp-content\/plugins\/wti-like-post-pro\/images\/pixel.gif' title='Like' \/><span class='lc-18707 lc'>0<\/span><\/a><\/div><div class='action-unlike'><a class='unlbg-style6 unlike-18707 jlk' data-task='unlike' data-post_id='18707' data-nonce='4d1b41d1d7' rel='nofollow'><img src='https:\/\/digilent.com\/blog\/wp-content\/plugins\/wti-like-post-pro\/images\/pixel.gif' title='Unlike' \/><span class='unlc-18707 unlc'>0<\/span><\/a><\/div><\/div> <div class='status-18707 status align-left'>Be the 1st to vote.<\/div><\/div><div class='wti-clear'><\/div>","protected":false},"excerpt":{"rendered":"<p>Use LabVIEW and a Raspberry Pi to create a universal remote with a graphical user interface!<\/p>\n","protected":false},"author":42,"featured_media":18584,"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,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4327,4323],"tags":[],"ppma_author":[4493],"class_list":["post-18707","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-projects","category-software"],"jetpack_featured_media_url":"https:\/\/digilent.com\/blog\/wp-content\/uploads\/2017\/01\/Screen-Shot-2017-01-04-at-12.53.51-PM.png","jetpack_sharing_enabled":true,"authors":[{"term_id":4493,"user_id":42,"is_guest":0,"slug":"astanton","display_name":"Austin Stanton","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/0cc9db2caf6344c8f78ea46c21570f33a954c45596addf479125043e52431de0?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\/18707","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\/42"}],"replies":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/comments?post=18707"}],"version-history":[{"count":0,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/posts\/18707\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/media\/18584"}],"wp:attachment":[{"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/media?parent=18707"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/categories?post=18707"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/tags?post=18707"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/digilent.com\/blog\/wp-json\/wp\/v2\/ppma_author?post=18707"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}