{"id":1491,"date":"2025-11-21T11:27:39","date_gmt":"2025-11-21T11:27:39","guid":{"rendered":"https:\/\/www.bleuio.com\/blog\/?p=1491"},"modified":"2025-11-21T11:29:12","modified_gmt":"2025-11-21T11:29:12","slug":"introducing-python-library-v1-7-2-for-bleuio","status":"publish","type":"post","link":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/","title":{"rendered":"Introducing Python Library v1.7.2 for BleuIO"},"content":{"rendered":"\n<p>We are excited to announce the release of <strong>BleuIO Python Library v1.7.2<\/strong>, bringing improved compatibility, new features, and better performance for developers building Bluetooth-enabled applications with BleuIO.<\/p>\n\n\n\n<p>This update supports the latest firmware versions \u2014 <strong>BleuIO Standard v2.7.9.29<\/strong> and <strong>BleuIO Pro v1.0.4.14<\/strong> \u2014 ensuring seamless integration with the newest hardware capabilities.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p><strong>Important Note:<\/strong><br>Python Library v1.7.2 does <strong>not<\/strong> support BleuIO Standard firmware <strong>2.2.0 or earlier<\/strong> (SSD005).<br>Please update your dongle to use this library version.<\/p>\n<\/blockquote>\n\n\n\n<h2 class=\"wp-block-heading\">What\u2019s New in v1.7.2<\/h2>\n\n\n\n<h4 class=\"wp-block-heading\">Updated Command Functions<\/h4>\n\n\n\n<p>This release introduces expanded support for the latest AT commands shipped with BleuIO Standard v2.7.9.29.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">New: ATAR Function<\/h4>\n\n\n\n<p>The library now includes a dedicated function for the newly introduced <strong>ATAR<\/strong> command, used to enable or disable <em>auto-reconnect<\/em>:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>atar()<\/code><\/li>\n<\/ul>\n\n\n\n<p>This addition offers developers more control over connection stability in dynamic environments.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Enhanced Polling Behavior<\/h4>\n\n\n\n<p>Several existing functions have been updated to align with the new status-polling behavior added in firmware v2.7.9.29.<\/p>\n\n\n\n<p>The following command functions now automatically poll status when called without parameters:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>ata()<\/code><\/li>\n\n\n\n<li><code>atasps()<\/code><\/li>\n\n\n\n<li><code>atassm()<\/code><\/li>\n\n\n\n<li><code>atassn()<\/code><\/li>\n\n\n\n<li><code>atds()<\/code><\/li>\n\n\n\n<li><code>ate()<\/code><\/li>\n\n\n\n<li><code>atew()<\/code><\/li>\n\n\n\n<li><code>atsiv()<\/code><\/li>\n\n\n\n<li><code>atsra()<\/code><\/li>\n\n\n\n<li><code>atsat()<\/code><\/li>\n\n\n\n<li><code>at_frssi()<\/code><\/li>\n\n\n\n<li><code>at_show_rssi()<\/code><\/li>\n<\/ul>\n\n\n\n<p>This enhancement allows quicker and more intuitive status queries, reducing boilerplate code in your applications.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Improved Logging and Debugging<\/h2>\n\n\n\n<p>The library now uses Python\u2019s built-in logging module instead of basic print statements, giving developers much finer control over how information is captured and displayed. This change improves the handling of debug output, warnings, and errors, and allows logging levels to be adjusted to suit different environments. It also enables smoother integration with larger applications that rely on structured logging. Overall, you can now tailor log visibility to match your debugging or production needs more effectively.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">New Constructor Parameters<\/h3>\n\n\n\n<p>To improve flexibility and performance, three new parameters have been added to the library\u2019s constructor:<\/p>\n\n\n\n<p><strong><code>w_timeout<\/code><\/strong><\/p>\n\n\n\n<p>Configures the <em>write timeout<\/em> for the serial port \u2014 useful when handling long operations or slower host systems.<\/p>\n\n\n\n<p><strong><code>exclusive_mode<\/code><\/strong><\/p>\n\n\n\n<p>Optional flag passed to PySerial to request <strong>exclusive access<\/strong> to the port.<br>This prevents other processes from interfering with communication.<\/p>\n\n\n\n<p><strong><code>rx_delay<\/code><\/strong><\/p>\n\n\n\n<p>Enables a short non-blocking sleep time in the RX thread when no bytes are available.<br>This improvement helps avoid busy-looping and reduces CPU load on some platforms.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Smarter RX Thread Behavior<\/h3>\n\n\n\n<p>Thanks to the new <strong>rx_delay<\/strong> parameter, the receive thread now behaves more efficiently when no incoming data is present.<br>This prevents unnecessary CPU usage while maintaining responsiveness.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Safer Thread and Exit Handling<\/h3>\n\n\n\n<p>This release includes more robust exit behavior:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Improved <code>exit_handler<\/code><\/li>\n\n\n\n<li>A safer SIGINT (Ctrl+C) handler, even when the library is used outside the main thread<\/li>\n<\/ul>\n\n\n\n<p>These adjustments help ensure clean shutdowns and reduce the risk of hanging threads in complex applications.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Upgrade Recommended<\/h3>\n\n\n\n<p>Updating to Python Library v1.7.2 is quick and straightforward. If you already have a previous version installed, start by upgrading the package through pip. Run the following command in your terminal or development environment:<\/p>\n\n\n\n<p><code>pip install --upgrade bleuio<\/code><\/p>\n\n\n\n<p>This will fetch and install the latest version of the library.<\/p>\n\n\n\n<p>Python Library v1.7.2 is a significant update that enhances functionality, stability, and performance \u2014 especially when used with the latest BleuIO firmware versions.<br>We recommend upgrading to take advantage of all new features.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>We are excited to announce the release of BleuIO Python Library v1.7.2, bringing improved compatibility, new features, and better performance for developers building Bluetooth-enabled applications with BleuIO. This update supports the latest firmware versions \u2014 BleuIO Standard v2.7.9.29 and BleuIO Pro v1.0.4.14 \u2014 ensuring seamless integration with the newest hardware capabilities. Important Note:Python Library v1.7.2 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":540,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1491","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bleuio"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.3 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Introducing Python Library v1.7.2 for BleuIO - 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\/introducing-python-library-v1-7-2-for-bleuio\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Introducing Python Library v1.7.2 for BleuIO - BleuIO - Create Bluetooth Low Energy application\" \/>\n<meta property=\"og:description\" content=\"We are excited to announce the release of BleuIO Python Library v1.7.2, bringing improved compatibility, new features, and better performance for developers building Bluetooth-enabled applications with BleuIO. This update supports the latest firmware versions \u2014 BleuIO Standard v2.7.9.29 and BleuIO Pro v1.0.4.14 \u2014 ensuring seamless integration with the newest hardware capabilities. Important Note:Python Library v1.7.2 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/\" \/>\n<meta property=\"og:site_name\" content=\"BleuIO - Create Bluetooth Low Energy application\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-21T11:27:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-21T11:29:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2023\/10\/python-library.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"672\" \/>\n\t<meta property=\"og:image:height\" content=\"330\" \/>\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\\\/introducing-python-library-v1-7-2-for-bleuio\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/\"},\"author\":{\"name\":\"BleuIO\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\"},\"headline\":\"Introducing Python Library v1.7.2 for BleuIO\",\"datePublished\":\"2025-11-21T11:27:39+00:00\",\"dateModified\":\"2025-11-21T11:29:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/\"},\"wordCount\":502,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/python-library.jpg\",\"articleSection\":[\"BleuIO\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/\",\"name\":\"Introducing Python Library v1.7.2 for BleuIO - BleuIO - Create Bluetooth Low Energy application\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/python-library.jpg\",\"datePublished\":\"2025-11-21T11:27:39+00:00\",\"dateModified\":\"2025-11-21T11:29:12+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/#\\\/schema\\\/person\\\/89bc581382d5964043f96efc54b75b80\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/python-library.jpg\",\"contentUrl\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/python-library.jpg\",\"width\":672,\"height\":330,\"caption\":\"python library\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/introducing-python-library-v1-7-2-for-bleuio\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.bleuio.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Introducing Python Library v1.7.2 for BleuIO\"}]},{\"@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":"Introducing Python Library v1.7.2 for BleuIO - 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\/introducing-python-library-v1-7-2-for-bleuio\/","og_locale":"en_US","og_type":"article","og_title":"Introducing Python Library v1.7.2 for BleuIO - BleuIO - Create Bluetooth Low Energy application","og_description":"We are excited to announce the release of BleuIO Python Library v1.7.2, bringing improved compatibility, new features, and better performance for developers building Bluetooth-enabled applications with BleuIO. This update supports the latest firmware versions \u2014 BleuIO Standard v2.7.9.29 and BleuIO Pro v1.0.4.14 \u2014 ensuring seamless integration with the newest hardware capabilities. Important Note:Python Library v1.7.2 [&hellip;]","og_url":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/","og_site_name":"BleuIO - Create Bluetooth Low Energy application","article_published_time":"2025-11-21T11:27:39+00:00","article_modified_time":"2025-11-21T11:29:12+00:00","og_image":[{"width":672,"height":330,"url":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2023\/10\/python-library.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\/introducing-python-library-v1-7-2-for-bleuio\/#article","isPartOf":{"@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/"},"author":{"name":"BleuIO","@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80"},"headline":"Introducing Python Library v1.7.2 for BleuIO","datePublished":"2025-11-21T11:27:39+00:00","dateModified":"2025-11-21T11:29:12+00:00","mainEntityOfPage":{"@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/"},"wordCount":502,"commentCount":0,"image":{"@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2023\/10\/python-library.jpg","articleSection":["BleuIO"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/","url":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/","name":"Introducing Python Library v1.7.2 for BleuIO - BleuIO - Create Bluetooth Low Energy application","isPartOf":{"@id":"https:\/\/www.bleuio.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/#primaryimage"},"image":{"@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/#primaryimage"},"thumbnailUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2023\/10\/python-library.jpg","datePublished":"2025-11-21T11:27:39+00:00","dateModified":"2025-11-21T11:29:12+00:00","author":{"@id":"https:\/\/www.bleuio.com\/blog\/#\/schema\/person\/89bc581382d5964043f96efc54b75b80"},"breadcrumb":{"@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/#primaryimage","url":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2023\/10\/python-library.jpg","contentUrl":"https:\/\/www.bleuio.com\/blog\/wp-content\/uploads\/2023\/10\/python-library.jpg","width":672,"height":330,"caption":"python library"},{"@type":"BreadcrumbList","@id":"https:\/\/www.bleuio.com\/blog\/introducing-python-library-v1-7-2-for-bleuio\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.bleuio.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Introducing Python Library v1.7.2 for BleuIO"}]},{"@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\/1491","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=1491"}],"version-history":[{"count":3,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/1491\/revisions"}],"predecessor-version":[{"id":1494,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/posts\/1491\/revisions\/1494"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/media\/540"}],"wp:attachment":[{"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/media?parent=1491"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/categories?post=1491"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bleuio.com\/blog\/wp-json\/wp\/v2\/tags?post=1491"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}