{"id":1027,"date":"2024-12-18T23:23:18","date_gmt":"2024-12-18T23:23:18","guid":{"rendered":"https:\/\/www.bleuio.com\/blog\/?p=1027"},"modified":"2024-12-19T09:27:19","modified_gmt":"2024-12-19T09:27:19","slug":"real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide","status":"publish","type":"post","link":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/","title":{"rendered":"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide"},"content":{"rendered":"\n<p>BleuIO, a versatile BLE USB dongle, simplifies BLE application development with its powerful AT commands and cross-platform compatibility. This tutorial demonstrates how to use BleuIO with Python to build a real-time BLE proximity-based LED control system.<\/p>\n\n\n\n<p>In this example, we focus on monitoring the RSSI (Received Signal Strength Indicator) of a specific BLE device and controlling the LED blinking rate of BleuIO based on proximity. The closer the device, the faster the blinking rate. The script also ensures clean termination, turning off the LED when the program exits.<\/p>\n\n\n\n<p>This tutorial uses the BleuIO Python library to showcase a practical use case. However, the concepts can be implemented in any programming language.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Devices and Tools Needed<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong><a href=\"https:\/\/www.bleuio.com\/bluetooth-low-energy-usb-ssd025.php\" target=\"_blank\" rel=\"noreferrer noopener\">BleuIO Pro BLE USB Dongle<\/a><\/strong><\/li>\n\n\n\n<li><strong>Python Installed<\/strong> (Python 3.6 or newer recommended)<\/li>\n\n\n\n<li><strong>BleuIO Python Library<\/strong><br>Install the library using <br><code>pip install bleuio<\/code>\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/pypi.org\/project\/bleuio\/\" target=\"_blank\" rel=\"noreferrer noopener\">BleuIO Python Library on PyPI<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Source Code<\/strong><br>Get the complete source code from GitHub:<br><a href=\"https:\/\/github.com\/smart-sensor-devices-ab\/Ble-led-blinking-proximity\" target=\"_blank\" rel=\"noreferrer noopener\">GitHub Repository<\/a><\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Use Case: Real-Time LED Blinking Based on Proximity<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Objective:<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Continuously monitor the RSSI value of a specific BLE device.<\/li>\n\n\n\n<li>Adjust the LED blinking rate of the BleuIO dongle based on the device\u2019s proximity.<\/li>\n\n\n\n<li>Ensure the LED turns off when the script is terminated.<\/li>\n<\/ol>\n\n\n\n<h4 class=\"wp-block-heading\">Workflow:<\/h4>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Scan for BLE devices<\/strong>: Identify the target device using its MAC address.<\/li>\n\n\n\n<li><strong>Read RSSI values<\/strong>: Fetch real-time signal strength data.<\/li>\n\n\n\n<li><strong>Control LED<\/strong>: Adjust the blinking rate based on proximity:\n<ul class=\"wp-block-list\">\n<li><strong>Very Close<\/strong>: Fast blinking.<\/li>\n\n\n\n<li><strong>Close<\/strong>: Moderate blinking.<\/li>\n\n\n\n<li><strong>Far<\/strong>: Slow blinking.<\/li>\n\n\n\n<li><strong>Very Far<\/strong>: Very slow blinking.<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Graceful Exit<\/strong>: Turn off the LED when the script ends.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">The Python Script<\/h3>\n\n\n\n<p>Below is the complete script for this project:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import time\nimport json\nimport atexit\nfrom bleuio_lib.bleuio_funcs import BleuIO\n\nrssi_value = None\ndongle = None  \n\ndef scan_callback(scan_input):\n    global rssi_value  \n    try:\n        device_data = json.loads(scan_input&#91;0])  \n        if device_data.get(\"addr\") == \"&#91;1]6B:C0:5C:BD:CF:14\":\n            rssi_value = device_data&#91;\"rssi\"]  \n            print(f\"\\nDevice Found! Address: {device_data&#91;'addr']}, RSSI: {rssi_value}\")\n    except json.JSONDecodeError as e:\n        print(f\"Error decoding JSON: {e}\")\n    except Exception as e:\n        print(f\"Unexpected error: {e}\")\n\ndef send_led_command(dongle, rssi):\n    if rssi is not None:  \n        if rssi > -40:\n            print(f\"RSSI: {rssi} | Sending LED Command: 50\/50\")\n            dongle.at_led(toggle=\"T\", on_period=\"50\", off_period=\"50\")\n        elif -60 &lt;= rssi &lt;= -40:\n            print(f\"RSSI: {rssi} | Sending LED Command: 100\/100\")\n            dongle.at_led(toggle=\"T\", on_period=\"100\", off_period=\"100\")\n        elif -90 &lt;= rssi &lt; -60:\n            print(f\"RSSI: {rssi} | Sending LED Command: 200\/200\")\n            dongle.at_led(toggle=\"T\", on_period=\"200\", off_period=\"200\")\n        else:\n            print(f\"RSSI: {rssi} | Sending LED Command: 300\/300\")\n            dongle.at_led(toggle=\"T\", on_period=\"300\", off_period=\"300\")\n    else:\n        print(\"No RSSI value available for LED command.\")\n\n\ndef cleanup():\n    if dongle:\n        print(\"\\n--- Turning off LED and cleaning up ---\")\n        dongle.at_led(0)\n\n# Main logic\ndef main():\n    global rssi_value, dongle  \n    dongle = BleuIO()\n\n    atexit.register(cleanup)\n\n    dongle.register_scan_cb(scan_callback)\n\n    print(\"\\n--- Starting BLE Task ---\\n\")\n\n    print(\"Setting device role to Central...\")\n    central_response = dongle.at_central()\n\n    try:\n        while True:\n            print(\"\\nStarting scan for 2 seconds...\")\n            dongle.at_gapscan(2)  \n            time.sleep(3)  \n\n            send_led_command(dongle, rssi_value)\n\n            print(\"\\nScan cycle completed. Restarting...\\n\")\n            time.sleep(1)\n    except KeyboardInterrupt:\n        print(\"\\n--- Script Terminated by User ---\")\n\n# Run the main function\nif __name__ == \"__main__\":\n    main()\n<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">How It Works<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Initialization<\/strong>: The script initializes the BleuIO dongle and sets it to Central role for scanning.<\/li>\n\n\n\n<li><strong>Scan Callback<\/strong>: The <code>scan_callback<\/code> function extracts the RSSI value of the target device in real-time.<\/li>\n\n\n\n<li><strong>LED Control<\/strong>: Based on the RSSI value:\n<ul class=\"wp-block-list\">\n<li><strong>RSSI > -40<\/strong>: Fast blinking (50ms on\/off).<\/li>\n\n\n\n<li><strong>-60 &lt;= RSSI &lt;= -40<\/strong>: Moderate blinking (100ms on\/off).<\/li>\n\n\n\n<li><strong>-90 &lt;= RSSI &lt; -60<\/strong>: Slow blinking (200ms on\/off).<\/li>\n\n\n\n<li><strong>RSSI &lt; -90<\/strong>: Very slow blinking (300ms on\/off).<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Graceful Termination<\/strong>: The script turns off the LED when terminated with <code>Ctrl + C<\/code>.<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Output<\/h3>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" title=\"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide #programming #BLE #BleuIO\" width=\"640\" height=\"360\" src=\"https:\/\/www.youtube.com\/embed\/mNeiBt3JVpo?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>This example demonstrates how easy it is to use BleuIO for BLE applications. Whether you\u2019re building proximity-based solutions or exploring BLE capabilities, BleuIO\u2019s AT commands and Python library make it simple to get started.<\/p>\n\n\n\n<p>Take this script, adapt it to your needs, and unlock the potential of BLE with BleuIO!<\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>BleuIO, a versatile BLE USB dongle, simplifies BLE application development with its powerful AT commands and cross-platform compatibility. This tutorial demonstrates how to use BleuIO with Python to build a real-time BLE proximity-based LED control system. In this example, we focus on monitoring the RSSI (Received Signal Strength Indicator) of a specific BLE device and [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":1028,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,2],"tags":[],"class_list":["post-1027","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bleuio","category-bleuio-tutorial"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide - BleuIO - Create Bluetooth Low Energy application<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide - BleuIO - Create Bluetooth Low Energy application\" \/>\n<meta property=\"og:description\" content=\"BleuIO, a versatile BLE USB dongle, simplifies BLE application development with its powerful AT commands and cross-platform compatibility. This tutorial demonstrates how to use BleuIO with Python to build a real-time BLE proximity-based LED control system. In this example, we focus on monitoring the RSSI (Received Signal Strength Indicator) of a specific BLE device and [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/\" \/>\n<meta property=\"og:site_name\" content=\"BleuIO - Create Bluetooth Low Energy application\" \/>\n<meta property=\"article:published_time\" content=\"2024-12-18T23:23:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-19T09:27:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/12\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"800\" \/>\n\t<meta property=\"og:image:height\" content=\"550\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"BleuIO\" \/>\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:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/\"},\"author\":{\"name\":\"BleuIO\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\"},\"headline\":\"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide\",\"datePublished\":\"2024-12-18T23:23:18+00:00\",\"dateModified\":\"2024-12-19T09:27:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/\"},\"wordCount\":416,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg\",\"articleSection\":[\"BleuIO\",\"BleuIO tutorial\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/\",\"name\":\"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide - BleuIO - Create Bluetooth Low Energy application\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg\",\"datePublished\":\"2024-12-18T23:23:18+00:00\",\"dateModified\":\"2024-12-19T09:27:19+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg\",\"contentUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg\",\"width\":800,\"height\":550,\"caption\":\"Real-Time BLE Proximity-Based LED Blinking\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/\",\"name\":\"BleuIO - Create Bluetooth Low Energy application\",\"description\":\"Learn Bluetooth Low Energy programming and build Bluetooth Low Energy Application\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\",\"name\":\"BleuIO\",\"sameAs\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\"],\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/author\\\/biadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide - BleuIO - Create Bluetooth Low Energy application","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:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/","og_locale":"en_US","og_type":"article","og_title":"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide - BleuIO - Create Bluetooth Low Energy application","og_description":"BleuIO, a versatile BLE USB dongle, simplifies BLE application development with its powerful AT commands and cross-platform compatibility. This tutorial demonstrates how to use BleuIO with Python to build a real-time BLE proximity-based LED control system. In this example, we focus on monitoring the RSSI (Received Signal Strength Indicator) of a specific BLE device and [&hellip;]","og_url":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/","og_site_name":"BleuIO - Create Bluetooth Low Energy application","article_published_time":"2024-12-18T23:23:18+00:00","article_modified_time":"2024-12-19T09:27:19+00:00","og_image":[{"width":800,"height":550,"url":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/12\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg","type":"image\/jpeg"}],"author":"BleuIO","twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/#article","isPartOf":{"@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/"},"author":{"name":"BleuIO","@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80"},"headline":"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide","datePublished":"2024-12-18T23:23:18+00:00","dateModified":"2024-12-19T09:27:19+00:00","mainEntityOfPage":{"@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/"},"wordCount":416,"commentCount":0,"image":{"@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/12\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg","articleSection":["BleuIO","BleuIO tutorial"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/","url":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/","name":"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide - BleuIO - Create Bluetooth Low Energy application","isPartOf":{"@id":"https:\/\/www.bleuio.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/#primaryimage"},"image":{"@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/12\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg","datePublished":"2024-12-18T23:23:18+00:00","dateModified":"2024-12-19T09:27:19+00:00","author":{"@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80"},"breadcrumb":{"@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/#primaryimage","url":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/12\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg","contentUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2024\/12\/Real-Time-BLE-Proximity-Based-LED-Blinking.jpg","width":800,"height":550,"caption":"Real-Time BLE Proximity-Based LED Blinking"},{"@type":"BreadcrumbList","@id":"https:\/\/www.bleuio.com\/blog\/real-time-ble-proximity-based-led-blinking-with-bleuio-a-practical-guide\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.bleuio.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Real-Time BLE Proximity-Based LED Blinking with BleuIO: A Practical Guide"}]},{"@type":"WebSite","@id":"https:\/\/www.bleuio.com\/blog\/#website","url":"https:\/\/www.bleuio.com\/blog\/","name":"BleuIO - Create Bluetooth Low Energy application","description":"Learn Bluetooth Low Energy programming and build Bluetooth Low Energy Application","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.bleuio.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80","name":"BleuIO","sameAs":["https:\/\/www.bleuio.com\/blog"],"url":"https:\/\/www.bleuio.com\/blog\/author\/biadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/1027","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/comments?post=1027"}],"version-history":[{"count":1,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/1027\/revisions"}],"predecessor-version":[{"id":1029,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/1027\/revisions\/1029"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/media\/1028"}],"wp:attachment":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/media?parent=1027"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/categories?post=1027"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/tags?post=1027"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}