{"id":5901,"date":"2021-01-28T11:33:16","date_gmt":"2021-01-28T11:33:16","guid":{"rendered":"http:\/\/bryceautomation.com\/?p=5901"},"modified":"2021-01-28T11:33:17","modified_gmt":"2021-01-28T11:33:17","slug":"arduino-blink-without-delay","status":"publish","type":"post","link":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/","title":{"rendered":"Arduino Blink Without Delay"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\">Introduction to Arduino Blink Without Delay<\/h4>\n\n\n\n<p>The Arduino Blink Without Delay example allows you to blink a light without using the delay() function in the Arduino IDE.  In short, this means you are not stopping the logic from scanning.  This, you can execute other instructions while the light is waiting to turn on or off.  Conversely, the delay() function pauses the execution of logic.  This means the arduino cannot perform other functions while the delay() function is executing.<\/p><div id=\"bryce-1234571026\" class=\"bryce-afterfirst bryce-entity-placement\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-8316758073402323\" crossorigin=\"anonymous\"><\/script><ins class=\"adsbygoogle\" style=\"display:block;\" data-ad-client=\"ca-pub-8316758073402323\" \ndata-ad-slot=\"7728240895\" \ndata-ad-format=\"auto\"><\/ins>\n<script> \n(adsbygoogle = window.adsbygoogle || []).push({}); \n<\/script>\n<\/div>\n\n\n\n<p>If you are simply blinking a light, this is not a problem.  On the other hand, in large programs, blinking a light might simply  indicate that certain logic is executing.  Generally, we do not want to pause all of the logic.  <\/p>\n\n\n\n<p>Another use for this feature is simply to execute certain instructions at specific intervals.   We do this without delaying the entire process.<\/p>\n\n\n\n<p>In this post, we&#8217;ll take a look at the Blink Without Delay example line by line.  You will find the &#8220;Blink Without Delay&#8221; examples on most installations.  This is under File | Examples | Digital | BlinkWithoutDelay.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">How it Works<\/h4>\n\n\n\n<p>BlinkWithoutDelay simply works by looking at the system clock.  We take a snapshot of the current time.  After that, we let the logic continue to scan.  When we detect that a certain amount of time has passed, we execute a block of code.  Basically, you are figuring out how much time has passed to determine if it&#8217;s time to execute a block of logic.  We do this while other logic continues to execute.  Conversely, the delay() function will pause the execution of your void loop() routine.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Set the Variables<\/h4>\n\n\n\n<p>Before we begin, there are some variables to initialize.  Let&#8217;s take a look at those variables in the example.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"749\" height=\"227\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-60.png\" alt=\"\" class=\"wp-image-5902 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-60.png 749w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-60-300x91.png 300w\" data-sizes=\"(max-width: 749px) 100vw, 749px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 749px; --smush-placeholder-aspect-ratio: 749\/227;\" \/><\/figure>\n\n\n\n<p>Our ledPin variable defaults to the LED that is built into the board.  Typically, on an UNO, this will be 13.  Likewise, we initialize the ledState, which will start as LOW, or 0.  <\/p>\n\n\n\n<p>We&#8217;ll use previousMillis to take a snapshot of the system clock.  We&#8217;ll see how this works later on.  <\/p>\n\n\n\n<p>We use the interval setting to determine how long an event will wait before executing.  In this case, the interval setting is 5000 milliseconds, which is 5 seconds.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Setup Function<\/h4>\n\n\n\n<p>In the void setup() function, we simply declare our led pin as an output.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"327\" height=\"83\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-61.png\" alt=\"\" class=\"wp-image-5903 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-61.png 327w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-61-300x76.png 300w\" data-sizes=\"(max-width: 327px) 100vw, 327px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 327px; --smush-placeholder-aspect-ratio: 327\/83;\" \/><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Loop Function<\/h4>\n\n\n\n<p>This is where most of the work gets done to blink a light without a delay.  Before discussing the logic, let&#8217;s take a look at the code.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"478\" height=\"287\" data-src=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62.png\" alt=\"\" class=\"wp-image-5905 lazyload\" data-srcset=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62.png 478w, https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62-300x180.png 300w\" data-sizes=\"(max-width: 478px) 100vw, 478px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 478px; --smush-placeholder-aspect-ratio: 478\/287;\" \/><\/figure>\n\n\n\n<p>First, we update the current milliseconds of the system.  We store this to the tag &#8220;currentMillis&#8221;.  It&#8217;s important to realize that the value of previousMillis is still 0 during the first scan.<\/p>\n\n\n\n<p>Secondly, look at our &#8220;If&#8221; Statement.  Remember, the currentMillis is constantly updating, and previousMillis is still 0.  The currentMillis variable us always incrementing.  Remember this whole loop is also constantly executing, top to bottom, then restarting again.<\/p>\n\n\n\n<p>When currentMillis &#8211; previousMillis is greater than or equal to the interval, the logic executes.  Since previous Millis is still 0, when currentMillis get to 5000, the statement is true, and the logic executes.<\/p>\n\n\n\n<p>At this point, previousMillis become 5000 in the next line (or close to that, depending on the execution time).  Our &#8220;If&#8221; statement will then become true again when the currentMillis get to 10000.  Then 15000 and so on.<\/p>\n\n\n\n<p>Each time the first &#8220;If&#8221; statement is true (every 5 seconds), the ledState tag flip-flops.<\/p>\n\n\n\n<p>For more beginner examples, visit the <a href=\"https:\/\/bryceautomation.com\/index.php\/category\/beginner\/\">beginner&#8217;s category page!<\/a><\/p>\n\n\n\n<p>&#8212; Ricky Bryce<\/p>\n<div id=\"bryce-3006089038\" class=\"bryce-after-content bryce-entity-placement\"><script async src=\"\/\/pagead2.googlesyndication.com\/pagead\/js\/adsbygoogle.js?client=ca-pub-8316758073402323\" crossorigin=\"anonymous\"><\/script><ins class=\"adsbygoogle\" style=\"display:block;\" data-ad-client=\"ca-pub-8316758073402323\" \ndata-ad-slot=\"4667596182\" \ndata-ad-format=\"auto\"><\/ins>\n<script> \n(adsbygoogle = window.adsbygoogle || []).push({}); \n<\/script>\n<\/div>","protected":false},"excerpt":{"rendered":"<p>Introduction to Arduino Blink Without Delay The Arduino Blink Without Delay example allows you to blink a light without using the delay() function in the Arduino IDE. In short, this means you are not stopping the logic from scanning. This, you can execute other instructions while the light is waiting to turn on or off. <a class=\"moretag btn btn-primary\" href=\"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/\">Read More \u00bb<\/a><\/p>\n","protected":false},"author":1,"featured_media":5905,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,8],"tags":[305,306],"class_list":{"0":"post-5901","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-arduino-other-microprocessors","8":"category-beginner","9":"tag-blink","10":"tag-delay","11":"czr-hentry"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Arduino Blink Without Delay Explanation - Bryce Automation<\/title>\n<meta name=\"description\" content=\"How the Arduino Blink Without Delay works. A line by line explanation of how to execute logic at intervals without the delay function.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Arduino Blink Without Delay Explanation - Bryce Automation\" \/>\n<meta property=\"og:description\" content=\"How the Arduino Blink Without Delay works. A line by line explanation of how to execute logic at intervals without the delay function.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/\" \/>\n<meta property=\"og:site_name\" content=\"Bryce Automation\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/ricky.bryce.7\" \/>\n<meta property=\"article:published_time\" content=\"2021-01-28T11:33:16+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-01-28T11:33:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62.png\" \/>\n\t<meta property=\"og:image:width\" content=\"478\" \/>\n\t<meta property=\"og:image:height\" content=\"287\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Ricky\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/\"},\"author\":{\"name\":\"Ricky\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"headline\":\"Arduino Blink Without Delay\",\"datePublished\":\"2021-01-28T11:33:16+00:00\",\"dateModified\":\"2021-01-28T11:33:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/\"},\"wordCount\":578,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/image-62.png\",\"keywords\":[\"blink\",\"delay\"],\"articleSection\":[\"Arduino and other microprocessors\",\"Beginner\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/\",\"name\":\"Arduino Blink Without Delay Explanation - Bryce Automation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/image-62.png\",\"datePublished\":\"2021-01-28T11:33:16+00:00\",\"dateModified\":\"2021-01-28T11:33:17+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\"},\"description\":\"How the Arduino Blink Without Delay works. A line by line explanation of how to execute logic at intervals without the delay function.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/#primaryimage\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/image-62.png\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/uploads\\\/2021\\\/01\\\/image-62.png\",\"width\":478,\"height\":287,\"caption\":\"arduino logic\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/2021\\\/01\\\/28\\\/arduino-blink-without-delay\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/bryceautomation.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Arduino Blink Without Delay\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#website\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/\",\"name\":\"Bryce Automation\",\"description\":\"Automating Home and Industry...\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/bryceautomation.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/#\\\/schema\\\/person\\\/5d5b0f6f6ad768f1ee52968338e63af7\",\"name\":\"Ricky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"url\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"contentUrl\":\"https:\\\/\\\/bryceautomation.com\\\/wp-content\\\/wphb-cache\\\/gravatar\\\/a8f\\\/a8fe6bf79d292b388ffee281ccb12488x96.jpg\",\"caption\":\"Ricky\"},\"sameAs\":[\"http:\\\/\\\/bryceautomation.com\",\"https:\\\/\\\/www.facebook.com\\\/ricky.bryce.7\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/ricky-bryce-4367a416\\\/\"],\"url\":\"https:\\\/\\\/bryceautomation.com\\\/index.php\\\/author\\\/ricky\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Arduino Blink Without Delay Explanation - Bryce Automation","description":"How the Arduino Blink Without Delay works. A line by line explanation of how to execute logic at intervals without the delay function.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/","og_locale":"en_US","og_type":"article","og_title":"Arduino Blink Without Delay Explanation - Bryce Automation","og_description":"How the Arduino Blink Without Delay works. A line by line explanation of how to execute logic at intervals without the delay function.","og_url":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/","og_site_name":"Bryce Automation","article_author":"https:\/\/www.facebook.com\/ricky.bryce.7","article_published_time":"2021-01-28T11:33:16+00:00","article_modified_time":"2021-01-28T11:33:17+00:00","og_image":[{"width":478,"height":287,"url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62.png","type":"image\/png"}],"author":"Ricky","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/#article","isPartOf":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/"},"author":{"name":"Ricky","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"headline":"Arduino Blink Without Delay","datePublished":"2021-01-28T11:33:16+00:00","dateModified":"2021-01-28T11:33:17+00:00","mainEntityOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/"},"wordCount":578,"commentCount":0,"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62.png","keywords":["blink","delay"],"articleSection":["Arduino and other microprocessors","Beginner"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/","url":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/","name":"Arduino Blink Without Delay Explanation - Bryce Automation","isPartOf":{"@id":"https:\/\/bryceautomation.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/#primaryimage"},"image":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/#primaryimage"},"thumbnailUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62.png","datePublished":"2021-01-28T11:33:16+00:00","dateModified":"2021-01-28T11:33:17+00:00","author":{"@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7"},"description":"How the Arduino Blink Without Delay works. A line by line explanation of how to execute logic at intervals without the delay function.","breadcrumb":{"@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/#primaryimage","url":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62.png","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/uploads\/2021\/01\/image-62.png","width":478,"height":287,"caption":"arduino logic"},{"@type":"BreadcrumbList","@id":"https:\/\/bryceautomation.com\/index.php\/2021\/01\/28\/arduino-blink-without-delay\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/bryceautomation.com\/"},{"@type":"ListItem","position":2,"name":"Arduino Blink Without Delay"}]},{"@type":"WebSite","@id":"https:\/\/bryceautomation.com\/#website","url":"https:\/\/bryceautomation.com\/","name":"Bryce Automation","description":"Automating Home and Industry...","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/bryceautomation.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/bryceautomation.com\/#\/schema\/person\/5d5b0f6f6ad768f1ee52968338e63af7","name":"Ricky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","url":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","contentUrl":"https:\/\/bryceautomation.com\/wp-content\/wphb-cache\/gravatar\/a8f\/a8fe6bf79d292b388ffee281ccb12488x96.jpg","caption":"Ricky"},"sameAs":["http:\/\/bryceautomation.com","https:\/\/www.facebook.com\/ricky.bryce.7","https:\/\/www.linkedin.com\/in\/ricky-bryce-4367a416\/"],"url":"https:\/\/bryceautomation.com\/index.php\/author\/ricky\/"}]}},"_links":{"self":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/5901","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/comments?post=5901"}],"version-history":[{"count":0,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/posts\/5901\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media\/5905"}],"wp:attachment":[{"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/media?parent=5901"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/categories?post=5901"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/bryceautomation.com\/index.php\/wp-json\/wp\/v2\/tags?post=5901"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}