<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[BLE GATTC write perfomance]]></title><description><![CDATA[<p dir="auto">Hello everyone,</p>
<p dir="auto">I currently work on a little light project. I set the brightness via BLE with a WiPy 3 which runs as a Master (light is Peripheral).<br />
It works.<br />
However I noticed that the performance of the char.WRITE is very variable.<br />
The first ~50 writes  have an average running time of 30ms (which is good), but then it suddenly drops down to around 80ms per WRITE request (and stays there). Why is that happening? Is there a way to improve the speed?<br />
For me it looks like an internal queue was running full. I couldn't find anything suspicious in the code tho:</p>
<p dir="auto"><a href="https://github.com/pycom/pycom-micropython-sigfox/blob/master/esp32/mods/modbt.c#L1697" target="_blank" rel="noopener noreferrer nofollow">https://github.com/pycom/pycom-micropython-sigfox/blob/master/esp32/mods/modbt.c#L1697</a></p>
<p dir="auto">If anyone can help I would appreciate it!</p>
]]></description><link>https://forum.pycom.io/topic/3180/ble-gattc-write-perfomance</link><generator>RSS for Node</generator><lastBuildDate>Tue, 16 Jun 2026 03:08:10 GMT</lastBuildDate><atom:link href="https://forum.pycom.io/topic/3180.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 03 May 2018 11:47:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to BLE GATTC write perfomance on Thu, 03 May 2018 11:47:09 GMT]]></title><description><![CDATA[<p dir="auto">Hello everyone,</p>
<p dir="auto">I currently work on a little light project. I set the brightness via BLE with a WiPy 3 which runs as a Master (light is Peripheral).<br />
It works.<br />
However I noticed that the performance of the char.WRITE is very variable.<br />
The first ~50 writes  have an average running time of 30ms (which is good), but then it suddenly drops down to around 80ms per WRITE request (and stays there). Why is that happening? Is there a way to improve the speed?<br />
For me it looks like an internal queue was running full. I couldn't find anything suspicious in the code tho:</p>
<p dir="auto"><a href="https://github.com/pycom/pycom-micropython-sigfox/blob/master/esp32/mods/modbt.c#L1697" target="_blank" rel="noopener noreferrer nofollow">https://github.com/pycom/pycom-micropython-sigfox/blob/master/esp32/mods/modbt.c#L1697</a></p>
<p dir="auto">If anyone can help I would appreciate it!</p>
]]></description><link>https://forum.pycom.io/post/19265</link><guid isPermaLink="true">https://forum.pycom.io/post/19265</guid><dc:creator><![CDATA[binux]]></dc:creator><pubDate>Thu, 03 May 2018 11:47:09 GMT</pubDate></item></channel></rss>