<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability</link><description>I&amp;#39;m trying to implement CLI over BLE UART for one of our company projects. I started from the experimental ble_app_cli example in the SDK. I&amp;#39;m using SDK 15.3.0 on the Nordic PCA10056 SDK board. I keep running into instability problems of various kinds</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 22 Oct 2020 18:04:27 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability" /><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/276500?ContentTypeID=1</link><pubDate>Thu, 22 Oct 2020 18:04:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:af6ce298-4b19-4582-9a87-7fa14057960b</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;I agree it is weird that it is so easily reproducible for you, and not reproducible here.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I understand. I wish you the best of luck with the family emergency!&lt;/p&gt;
&lt;p&gt;I think it is a good idea to start a new ticket when you are back, because I will be off work for some weeks in a few weeks. Please refer to this one, so the Nordic engineer dealing with it have some background information.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/276497?ContentTypeID=1</link><pubDate>Thu, 22 Oct 2020 16:58:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dbf2f473-3df0-4878-8591-a7c8ecfbbb14</guid><dc:creator>robca</dc:creator><description>&lt;p&gt;Weird... I have a completely standard PCA10056, no changes. And I can repro it with an iPhone, albeit less reliably than with an Android phone&lt;/p&gt;
&lt;p&gt;Unfortunately a family emergency came up, and I will need to focus on that for a few weeks. I won&amp;#39;t have access to the development environment either. Can you please close this issue Edvin and once I can focus on this again I will open a new thread and refer to this one. There&amp;#39;s no point keeping this pending if you don&amp;#39;t have a reliable repro and I cannot work on this. Thanks for all the work on this so far&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/276373?ContentTypeID=1</link><pubDate>Thu, 22 Oct 2020 08:43:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:44797f26-317f-4dac-bf8e-91acf506e405</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Yes, I tried with an iPhone, using nRF Connect for iOS, and I walked away (two times) and I put it in a faraday cage (metal box) a handful of times. I used both your provided hex file and the unmodified SDK.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
[quote user="robca"]I cannot get a debug session showing anything meaningful, as I already explained many times before. Once it stops working, it stops sending log updates (including the battery updates) and I can only break into the debugger[/quote]
&lt;p&gt;&amp;nbsp;Can you show me a screenshot of that? Just take a screen dump of SES without doing anything after it stops reporting the battery levels, before you press anything. Perhaps it reveals something I didn&amp;#39;t think of asking about. Maybe you see a hardfault?&lt;/p&gt;
&lt;p&gt;Is there anything else that can be different from your setup to mine? You are using a standard DK, right? Did you do any modifications to it? What DK version/revision is it? It says on the white sticker.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/276293?ContentTypeID=1</link><pubDate>Wed, 21 Oct 2020 16:06:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1aa05415-dc11-4b27-9488-79d816522ea2</guid><dc:creator>robca</dc:creator><description>&lt;p&gt;I&amp;#39;m not sure how you cannot reproduce it. Did you try with an Android phone or iPhone and losing signal by either moving away or using a metal box? Or are you using the 2 DK setup? I&amp;#39;m pretty sure that the BLE stack being used makes some difference, since I can see slightly different behaviors between Android and iPhone, and it&amp;#39;s entirely possible that using an all Nordic stack might change things once more.&lt;/p&gt;
&lt;p&gt;Did you try to reproduce with the exact same scenario I provided? If so, can you please let me know what phone/OS version you are using, so that I can see if I can use the same here to get a reproducible scenario for you?&lt;/p&gt;
&lt;p&gt;I cannot get a debug session showing anything meaningful, as I already explained many times before. Once it stops working, it stops sending log updates (including the battery updates) and I can only break into the debugger, but never in the example code. It&amp;#39;s clearly still running, but in a state where the BLE stack is not responsive to external events. I&amp;#39;m not sure what help would it be to send a ton of screenshots of different parts of the softdevice or other library code&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/276122?ContentTypeID=1</link><pubDate>Wed, 21 Oct 2020 09:20:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:38a85f81-3e19-4e4e-aebe-687fdef49d50</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;So I tested the .hex file that you sent (together with the softdevice). I tested the SDK15.3.0\&lt;span&gt;examples\ble_peripheral\experimental\ble_app_cli\hex\ble_app_cli_pca10056_s140.hex file, and the unmodified example from the same SDK (both Keil and SES projects) and I still can&amp;#39;t reproduce the issue that you report.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Can you please try to run a debug session, and try to recreate it. Please take a screenshot of the following:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/3225.pastedimage1603271876888v1.png" alt=" " /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Make sure you get the log window, the call stack and the registers. If you don&amp;#39;t see any logging, please try to change&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;#define NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED 1&lt;br /&gt;to&lt;br /&gt;#define NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED 0&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;in sdk_config.h.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Please also upload a screenshot from:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/5466.pastedimage1603271996916v2.png" alt=" " /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;BR,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Edvin&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/276043?ContentTypeID=1</link><pubDate>Wed, 21 Oct 2020 00:08:38 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bf9e62f0-f95f-4093-adf7-7eed789e2b9a</guid><dc:creator>robca</dc:creator><description>&lt;p&gt;Edvin, I&amp;#39;m not sure what other ZIP file I can send you. I&amp;#39;m using the 15.3.0 SDK, yes. and the ZIP file I previously uploaded contains everything needed to reproduce the problem. You simply need to unzip that file over the SDK 15.3.0&amp;nbsp;example in&amp;nbsp;examples\ble_peripheral\experimental\ble_app_cli, overwriting the files with the same name. In addition to that, you need to copy the&amp;nbsp;nrf_cli_ble_uart.c file inside the ZIP file over the same file in the SDK in&amp;nbsp;components\libraries\cli\ble_uart. The only other alternative would be to upload the whole SDK, but that&amp;#39;s probably too big for the forum&lt;/p&gt;
&lt;p&gt;I&amp;#39;m using Segger&amp;nbsp;4.52a, with the&amp;nbsp;8.32a CPU support package, but as you can see below, that makes no difference&lt;/p&gt;
&lt;p&gt;Here is the HEX file compiled with Release settings, you will also need to flash the S140 softdevice in the SDK 15.3.0 to make it work. Please note that this HEX is actually identical to the SDK example, no change at all (since there is no need to change logs and other for Release, nor MMD). So this hex is pretty much the app portion of the HEX file in&amp;nbsp;examples\ble_peripheral\experimental\ble_app_cli\hex (that one also has the softdevice)&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/ble_5F00_app_5F00_cli_5F00_pca10056_5F00_s140.hex"&gt;devzone.nordicsemi.com/.../ble_5F00_app_5F00_cli_5F00_pca10056_5F00_s140.hex&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;So the simplest way to reproduce the problem is simply to flash the&amp;nbsp;examples\ble_peripheral\experimental\ble_app_cli\hex\ble_app_cli_pca10056_s140.hex file onto a PCA10056, connect with an Android device to NORDIC_CLI, then walk away enough to lose signal (or put the phone into a metal box), and the PCA10056 is stuck and never recovers. There&amp;#39;s no need to use any parts of my example. So the example, as provided by Nordic, doesn&amp;#39;t work reliably&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Just in case, my device is a Pixel 3, but I can reproduce it even with an iPhone using the iOS version of nRF Toolbox... for some reason, it&amp;nbsp; takes a bit longer to get the PCA10056 to hang with the iPhone, but it hangs nonetheless. You just need to wait 20 seconds or so once it loses the signal before getting close again to the PCA10056&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;strong&gt;EDIT&lt;/strong&gt;: I just tried flashing the&amp;nbsp;examples\ble_peripheral\experimental\ble_app_cli\hex\ble_app_cli_pca10056_s140.hex from SDK 17.0.2 and that one seems to work as expected, and can handle loss of signal, even using the serial terminal app. Unfortunately that doesn&amp;#39;t really help us, because we are forced to use SDK15.3.0 (to avoid having to re-validate the entire firmware) and I cannot debug the app flow to understand where it hangs in 15.3.0, and where instead it works in 17.0.2. Also17.0.2 uses a completely different S140 sofdevice, so not much I can learn from this&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/275763?ContentTypeID=1</link><pubDate>Tue, 20 Oct 2020 07:28:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:516a1caf-9426-4672-b984-368e1c1acb81</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;I still can&amp;#39;t reproduce that. Can you send me:&lt;/p&gt;
&lt;p&gt;1: A zipped folder that contains the project file that you used to compile this application that has the issue when you disconnect. Please let me know what IDE you are using (and I assume you are still using SDK15.3.0.&lt;/p&gt;
&lt;p&gt;2: The hex file that you are reproducing this with.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;BR,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/275421?ContentTypeID=1</link><pubDate>Fri, 16 Oct 2020 16:03:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e2bdd53d-b9a9-44e6-b430-bc5588a700cc</guid><dc:creator>robca</dc:creator><description>[quote userid="26071" url="~/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability/275280#275280"]you could try to use nRF Connect for Desktop with one of the DKs, and connect to the other DK running your own application. [/quote]
&lt;p&gt;Unfortunately I do not have two DKs. But in any case that would not be a realistic configuration for our scenario where a smartphone will be used to configure the nRF52 device currently under development, and a rugged Android device used to QA test and configure the final product at the end of the production line&lt;/p&gt;
&lt;p&gt;I tried with the example as is, no changes, compiled in Release mode, connected the first time using UART in nRF Toolbox. Same problem: as soon as the connection is lost, the PCA10056 gets into a non-working state and never recovers. Neither nRF Connect nor nRF Toolbox can see the device.&lt;/p&gt;
&lt;p&gt;The example turns on one of the PCA10056 leds when connected. That led never turns off when the device is in the non-responding state, which probably means that the PCA10056 thinks it&amp;#39;s still connected and never even goes into sleep mode. That is consistent with the code never reaching the nrf_cli-uninit() inside BLE_GAP_EVT_DISCONNECTED&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/275280?ContentTypeID=1</link><pubDate>Fri, 16 Oct 2020 08:29:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ab277122-cb4b-44ab-a34c-cb9d8472630a</guid><dc:creator>Edvin</dc:creator><description>[quote user="robca"]I don&amp;#39;t understand what you mean by &amp;quot;disconnect the DK&amp;quot;[/quote]
&lt;p&gt;&amp;nbsp;Ok, I thought that if you had two PCA10056, you could try to use nRF Connect for Desktop with one of the DKs, and connect to the other DK running your own application. Bu &amp;quot;disconnecting the DK&amp;quot; I meant that you could unplug the DK that is running the nRF Connect FW, which would make it immediately unresponsive (similar to what you would see if you walk out of range with a phone). I am still not able to reproduce this.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Does this behavior depend on your sdk_config.h definitions? Does it happen if you use an unmodified SDK and the unmodified example, without any changes to the sdk_config.h file? Or does it only happen when you enable the logging from the CLI module?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;BR,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274944?ContentTypeID=1</link><pubDate>Wed, 14 Oct 2020 16:02:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:496bd73d-3bae-453b-a79d-4f7a6a0fc026</guid><dc:creator>robca</dc:creator><description>[quote userid="26071" url="~/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability/274852#274852"]Try to sniff the connection. Does the nRF advertise?[/quote]
&lt;p&gt;Thanks Edvin. As I said, the PCA10056 is not working anymore. After losing the signal, I get back to the same desk where the PCA10056 is, and try nRF Connect and/or nRF Toolbox, and there is nothing from the PCA10056 to sniff&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t understand what you mean by &amp;quot;disconnect the DK&amp;quot;. I use the example simply with a single PCA10056 and an Android phone to connect to it. I don&amp;#39;t use the very complex Python-script of the test, since that adds unneeded complexity and requires more hardware&lt;/p&gt;
&lt;p&gt;In that example, the PCA10056 should work as a BLE UART device, and you can connect to it with any device that can establish a BLE UART connection (e.g. an Android phone using nRF Toolbox UART).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;So the PCA10056 is started, an Android phone with nRF toolbox UART used to connect to the PCA10056, walk far enough to lose the connection, then walk back into range. At that point, the PCA10056 is dead&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274852?ContentTypeID=1</link><pubDate>Wed, 14 Oct 2020 10:37:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:394fca1c-42f5-4da1-b172-e2b54ac759d1</guid><dc:creator>Edvin</dc:creator><description>[quote user="robca"]button at the bottom of the nRF app will say &amp;quot;connecting...&amp;quot; but nothing happens.[/quote]
&lt;p&gt;&amp;nbsp;That can mean that you are too far away, but the phone can&amp;#39;t pick up any advertisements. Try to sniff the connection. Does the nRF advertise? Does the phone send a connection request? Does the same thing happen if you try to use nRF Connect, and just unplug the connectivity DK/dongle? This was what I tested. Sorry, but it is a bit difficult for me to walk away from it, because I use Remote Desktop and the DKs are connected to my computer in the office. I tried a couple of times yesterday to just unplug the DK it was connected to (I was using nRF Connect for Desktop). That will cause the connection to time out, because the central disappears, but I never ran into any issues.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;BR,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274747?ContentTypeID=1</link><pubDate>Wed, 14 Oct 2020 00:30:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ded38394-33ce-4ee5-8f29-bf9298b24a35</guid><dc:creator>robca</dc:creator><description>[quote userid="26071" url="~/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability/274572#274572"]You can drag&amp;#39;n&amp;#39;drop them. The easiest would be a zipped folder containing the project folder, which includes all the files you have edited here (main, sdk_config and the project file)[/quote]
&lt;p&gt;Thanks Edvin. I missed that. Glad I asked&amp;nbsp;&lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;Ok, I tried what you suggested, and the only suggestion that worked well enough was #3, comment out the NRF_LOG calls in&amp;nbsp;&lt;span&gt;cli_ble_uart_write().&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;The logs don&amp;#39;t crash anymore (good!) but I still get into the same state where no connection is accepted. Steps to repro: execute the code in debug mode, connect with nRF Toolbox UART functionality. You will see the&amp;nbsp;&amp;lt;info&amp;gt; app: BLE Cli enabled&amp;nbsp;message. Then walk away until the BLE signal is lost, the button at the bottom of the nRF app will say &amp;quot;connecting...&amp;quot; but nothing happens. The message&amp;nbsp;&amp;lt;info&amp;gt; app: BLE Cli disabled is never reached (even putting a breakpoint there, nothing). If you try to reconnect manually, in the scan screen the Nordic_CLI device doesn&amp;#39;t show (because the PCA10056 is in a non working state).There is no way to reconnect to the PCA10056 short of restarting it&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Unlike before, you can break into the debugger (assuming you have MMD enabled), but with no real useful information (usually it&amp;#39;s in task_yeld())&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I&amp;#39;m enclosing all modified files in this ZIP. Please note that I did not follow the exact folder structure of the SDK for the&amp;nbsp;nrf_cli_ble_uart.c file (which you need to manually copy into&amp;nbsp;components\libraries\cli\ble_uart. MMD is enabled on that build, and completely transparent&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/ble_5F00_app_5F00_cli.zip"&gt;devzone.nordicsemi.com/.../ble_5F00_app_5F00_cli.zip&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Appreciate any help you can provide&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274572?ContentTypeID=1</link><pubDate>Tue, 13 Oct 2020 10:52:29 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5dea848b-d493-49da-9f87-30a9045b2f98</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;You can drag&amp;#39;n&amp;#39;drop them. The easiest would be a zipped folder containing the project folder, which includes all the files you have edited here (main, sdk_config and the project file).&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;There is also an option to insert-&amp;gt;Image/video/file -&amp;gt; and then click &amp;quot;upload&amp;quot; (which doesn&amp;#39;t look like a button after the last update).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://devzone.nordicsemi.com/resized-image/__size/320x240/__key/communityserver-discussions-components-files/4/6371.pastedimage1602575976414v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;However, I will try to do the changes that you did.&lt;/p&gt;
&lt;p&gt;I&amp;#39;ll try without monitor mode debugging first, because I am not familiar with it.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I see that when I enabled NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED is set to 1, it stops logging after you connect to the device (after the lines saying that notifications are not enabled). I believe the reason for this is that the CLI, which also is a log backend, will log things in the cli_ble_uart_write() function, which is used to process the logs. This means that whenever something is logged, it is queued using NRF_LOG_INFO(), which in turn triggers cli_ble_uart_write(), which triggers the next NRF_LOG_INFO(&amp;quot;&amp;quot;); and so on. Hence, since this keeps on adding to the tasks, the&amp;nbsp;idle_task() in main() is no longer called. Try to set a breakpoint there, and you will see that it is not hit after the connection is entered.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;So you have 3 choices:&lt;/p&gt;
&lt;p&gt;1: set&amp;nbsp;NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED to 0,&lt;/p&gt;
&lt;p&gt;2: set&amp;nbsp;NRF_CLI_LOG_BACKEND to 0 (this will stop all logs from being printed over CLI).&lt;/p&gt;
&lt;p&gt;3: Remove all calls to NRF_LOG_... in cli_ble_uart_write():&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;static ret_code_t cli_ble_uart_write(nrf_cli_transport_t const * p_transport,
                                     const void *                p_data,
                                     size_t                      length,
                                     size_t *                    p_cnt)
{
    ASSERT(p_cnt);
    nrf_cli_ble_uart_internal_t * p_instance =
                             CONTAINER_OF(p_transport, nrf_cli_ble_uart_internal_t, transport);
    ret_code_t err_code = NRF_SUCCESS;
    if (p_instance-&amp;gt;p_cb-&amp;gt;service_started)
    {
        *p_cnt = length;
        err_code = nrf_ringbuf_cpy_put(p_instance-&amp;gt;p_tx_ringbuf, p_data, p_cnt);

//        NRF_LOG_INFO(&amp;quot;Conn_handle:%d, write req:%d, buffered:%d&amp;quot;,
//                                                     p_instance-&amp;gt;p_cb-&amp;gt;conn_handle, length, *p_cnt);
//        NRF_LOG_HEXDUMP_DEBUG(p_data, *p_cnt);
    }
    else
    {
//        NRF_LOG_INFO(&amp;quot;Conn_handle:%d, write req:%d. Notifications not enabled&amp;quot;,
//                     p_instance-&amp;gt;p_cb-&amp;gt;conn_handle, length);
        *p_cnt = length;
        p_instance-&amp;gt;p_cb-&amp;gt;handler(NRF_CLI_TRANSPORT_EVT_TX_RDY, p_instance-&amp;gt;p_cb-&amp;gt;p_context);
    }
    return err_code;
}&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;If you still encounter issues with the disconnection. What does the log say after the disconnect if you implement one of the three workarounds above?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;BR,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274420?ContentTypeID=1</link><pubDate>Mon, 12 Oct 2020 16:26:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:83eb538e-901e-42b5-bff1-6eb22d9649ca</guid><dc:creator>robca</dc:creator><description>[quote userid="6462" url="~/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability/274241#274241"]&lt;p&gt;MMD should work on any Cortex-M (except M0).&lt;/p&gt;
&lt;p&gt;You need a J-Link, though; nobody else seems to support it - even ARM themselves!&lt;/p&gt;[/quote]
&lt;p&gt;Yep. I looked into making it work for the STM32 (using JLINK), but I lost interest after a while. I also happened to have found a long dormant bug in the MMD code itself, when FP code is enabled&amp;nbsp; &amp;nbsp;&lt;a href="https://forum.segger.com/index.php/Thread/7292-SOLVED-Bug-in-Monitor-Mode-Debug-example-when-using-FP-enabled-code-variable-add/"&gt;https://forum.segger.com/index.php/Thread/7292-SOLVED-Bug-in-Monitor-Mode-Debug-example-when-using-FP-enabled-code-variable-add/&lt;/a&gt;&amp;nbsp; &lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I sure am glad Nordic made it work seamlessly and included the Jlink in the SDK boards&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274419?ContentTypeID=1</link><pubDate>Mon, 12 Oct 2020 16:22:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:a126e81e-7004-4cbc-8585-bfd99d03e8c0</guid><dc:creator>robca</dc:creator><description>[quote userid="26071" url="~/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability/274264#274264"]I am trying to reproduce this, but so far without any luck.&amp;nbsp;[/quote]
&lt;p&gt;Thanks for the tests.&amp;nbsp;Here&amp;#39;s how to reproduce it, using SDK15.3 (I reproduced it even with the newer SDKs, but our project needs to use SDK15.3, so I hope we can work on that. Otherwise I can create repro steps for 17.0.2, but all the relevant files are identical to 15.3.0)&lt;/p&gt;
&lt;p&gt;Use the experimental\ble_app_cli example for PCA10056, and make the following changes to sdk_config.h&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;#define BLE_NUS_CONFIG_LOG_ENABLED 1
#define BLE_NUS_CONFIG_LOG_LEVEL 4
#define APP_TIMER_KEEPS_RTC_ACTIVE 1  // needed for MMD
#define NRF_FPRINTF_FLAG_AUTOMATIC_CR_ON_LF_ENABLED 0  // without this, Jlink RTT doesn&amp;#39;t output
#define NRF_CLI_BLE_UART_CONFIG_LOG_ENABLED 1
#define NRF_CLI_BLE_UART_CONFIG_LOG_LEVEL 4
#define NRF_SDH_LOG_ENABLED 1   // this should already be enabled
#define NRF_SDH_LOG_LEVEL 4
#define NRF_SDH_SOC_LOG_ENABLED 1   // this should already be enabled
#define NRF_SDH_SOC_LOG_LEVEL 4&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Add the following to main.c (I include the 2 lines preceding the change and the 2 following)&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="c_cpp"&gt;    nrf_cli_ble_uart_config_t config = { .conn_handle = m_conn_handle };

    err_code = nrf_cli_init(&amp;amp;m_ble_cli, &amp;amp;config, true, true, NRF_LOG_SEVERITY_INFO);
    NRF_LOG_INFO(&amp;quot;BLE Cli enabled&amp;quot;);    // add this line
    APP_ERROR_CHECK(nrf_cli_task_create(&amp;amp;m_ble_cli));

    APP_ERROR_CHECK(err_code);
            
[...]

    m_conn_handle = BLE_CONN_HANDLE_INVALID;
    (void)nrf_cli_uninit(&amp;amp;m_ble_cli);
    NRF_LOG_INFO(&amp;quot;BLE Cli disabled&amp;quot;);       // add this
    break;

[...]

int main(void)

{
    bool erase_bonds;

#if CONFIG_JLINK_MONITOR_ENABLED                            // enable MMD
    NVIC_SetPriority(DebugMonitor_IRQn, _PRIO_SD_LOW);      // MMD
#endif                                                      // MMD

    core_init();&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Make the following changes to&amp;nbsp;ble_app_cli_pca10056_s140.emProject to add the MMD files and to enable it. Also make sure it&amp;#39;s debug level 3 and optimization 0. Copy the 3 MMD files under&amp;nbsp;examples\ble_peripheral\experimental\ble_app_cli\pca10056\s140\ses&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;[...]
&amp;lt;folder Name=&amp;quot;Segger_MMD&amp;quot;&amp;gt;
  &amp;lt;file file_name=&amp;quot;JLINK_MONITOR_ISR_SES.s&amp;quot; /&amp;gt;
  &amp;lt;file file_name=&amp;quot;JLINK_MONITOR.c&amp;quot; /&amp;gt;
&amp;lt;/folder&amp;gt;

[...]

&amp;lt;configuration
Name=&amp;quot;Debug&amp;quot;
JLinkExecuteCommand=&amp;quot;SetMonModeDebug = 1;SetMonModeVTableAddr = 0x31000&amp;quot;
c_preprocessor_definitions=&amp;quot;DEBUG;CONFIG_JLINK_MONITOR_ENABLED&amp;quot;
gcc_optimization_level=&amp;quot;None&amp;quot; /&amp;gt;&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Compile and run in debug mode. Connect to the PCA10056 with nRFConnect. You will notice that there is no log output (not even the &amp;quot;BLE CLI enabled&amp;quot; we just added.&lt;/p&gt;
&lt;p&gt;Change the following in sdh_config.h to&amp;nbsp;ensure the logs are printed as soon as they happen&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;#define NRF_LOG_BUFSIZE 2048
#define NRF_LOG_DEFERRED 0&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;You will see that as soon as you connect to the PCA10056, the program hangs&lt;/p&gt;
&lt;p&gt;You can then set again #define NRF_LOG_DEFERRED 1 and add a NRF_FLUSH() after the &amp;quot;BLE CLI enable/disabled&amp;quot; messages to at least monitor connection/disconnection&lt;/p&gt;
&lt;p&gt;&lt;pre class="ui-code" data-mode="text"&gt;NRF_LOG_INFO(&amp;quot;BLE Cli enabled&amp;quot;);
NRF_LOG_FLUSH();

[...]

NRF_LOG_INFO(&amp;quot;BLE Cli disabled&amp;quot;);
NRF_LOG_FLUSH();&lt;/pre&gt;&lt;/p&gt;
&lt;p&gt;Re-execute the code in debug mode and connect to the PCA10056 with nRF Connect. You will see the &amp;quot;BLE CLI enabled&amp;quot; message. Then disconnect nRF Connect. You will not see a &amp;quot;BLE CLI disabled&amp;quot; message and the PCA10056 is now unreachable by nRF Connect until you restart it&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;P.S. I cannot find a way to include files. It would be easier for you if there was a way to upload my files, so that you won&amp;#39;t have to edit manually&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274264?ContentTypeID=1</link><pubDate>Mon, 12 Oct 2020 10:53:32 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:251155f3-be3e-4dbf-ae50-3a6be2fc9a8d</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;I am trying to reproduce this, but so far without any luck.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Have you tried adding &amp;quot;DEBUG&amp;quot; to your preprocessor definitions? Does the log say anything when it stops responding then?&lt;/p&gt;
&lt;p&gt;Also, can you please try to disable optimization and set a breakpoint on line 91 in app_error_weak.c (after DEBUG is defined in your preprocessor definitions). Is it hit?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;What I suspect is that the connection is being used immediately after the connection handle is set to&amp;nbsp;BLE_CONN_HANDLE_INVALID. But this should trigger the error handler, which you should see in the log if DEBUG is defined.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274241?ContentTypeID=1</link><pubDate>Mon, 12 Oct 2020 09:24:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:637df3d8-e351-4211-9b2c-17840cf61142</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;MMD should work on any Cortex-M (except M0).&lt;/p&gt;
&lt;p&gt;You need a J-Link, though; nobody else seems to support it - even ARM themselves!&lt;/p&gt;
&lt;p&gt;&lt;a href="https://community.arm.com/developer/tools-software/tools/f/keil-forum/35230/is-monitor-mode-debug-mmd-supported-with-ulink"&gt;https://community.arm.com/developer/tools-software/tools/f/keil-forum/35230/is-monitor-mode-debug-mmd-supported-with-ulink&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://community.st.com/s/question/0D50X00009nNQQnSAO/monitor-mode-debug-mmd-"&gt;https://community.st.com/s/question/0D50X00009nNQQnSAO/monitor-mode-debug-mmd-&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="emoticon" data-url="https://devzone.nordicsemi.com/cfs-file/__key/system/emoji/1f61e.svg" title="Disappointed"&gt;&amp;#x1f61e;&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274116?ContentTypeID=1</link><pubDate>Fri, 09 Oct 2020 22:50:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e91fd50f-c43a-4ab7-aed1-96e22632fe05</guid><dc:creator>robca</dc:creator><description>&lt;p&gt;No worries, any help effort is appreciated :) yours would have been a great suggestion, had I not used it already. Discovering MMD was quite a life-changing event, to the point that I miss not having it on other microprocessors (like the STM32 when debugging USB connections, which can also time out WHILE DEBUGGING). Alas, not enough in this case&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274115?ContentTypeID=1</link><pubDate>Fri, 09 Oct 2020 22:46:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0f0db4b4-2108-4253-897e-091b3293945f</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;sorry missed that&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274111?ContentTypeID=1</link><pubDate>Fri, 09 Oct 2020 19:50:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:99c103d6-4e78-417f-82aa-067753b6dffc</guid><dc:creator>robca</dc:creator><description>&lt;p style="text-align:left;"&gt;Thanks for the help, but I&amp;#39;m not sure you actually read what I wrote:&lt;/p&gt;
&lt;p style="text-align:left;"&gt;&lt;em&gt;&amp;quot;I tried adding breakpoints (using Monitor mode Debugging to keep the BLE stack alive), but even that didn&amp;#39;t lead to any meaningful find: I always get to a point where a call into the Softdevice fails, with no extra information&amp;quot;&amp;nbsp;&lt;/em&gt;&lt;/p&gt;
&lt;p style="text-align:left;"&gt;&lt;span&gt;I always had Monitor Mode Debugging in all my tests and debug sessions.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p style="text-align:left;"&gt;&lt;span&gt;The problem is very simple to reproduce: enable the Softdevice, Ble UART and Cli logs and see it freeze as soon as anything connects to the PCA10056&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274110?ContentTypeID=1</link><pubDate>Fri, 09 Oct 2020 18:38:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9686c9a9-caf2-4f11-b6b8-560ab0c529c4</guid><dc:creator>awneil</dc:creator><description>[quote userid="88394" url="~/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability/274104#274104"] &amp;quot;break&amp;quot;pause on the debugger, and the code ends in HardFault handler [/quote]
&lt;p&gt;breaking in the debugger is likely to crash the SoftDevice.&lt;/p&gt;
&lt;p&gt;Have you tried Monitor Mode Debug?&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/23657/improved-softdevice-debugging"&gt;devzone.nordicsemi.com/.../improved-softdevice-debugging&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274104?ContentTypeID=1</link><pubDate>Fri, 09 Oct 2020 16:50:49 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c2c32ed7-76bf-4635-adaa-0b5a50f6300d</guid><dc:creator>robca</dc:creator><description>&lt;p&gt;I spent 2 days debugging before creating this thread, yes&lt;/p&gt;
&lt;p&gt;Enabling logs completely locks the device when it connects, failing somewhere inside nrf_sdh_ble_evts_poll(). The only way to recover is to &amp;quot;break&amp;quot;pause on the debugger, and the code ends in HardFault handler with no stack trace. I tried even putting a breakpoint in HardFault handler, but it never reaches it before I hit&lt;/p&gt;
&lt;p&gt;If I enable fewer logs, I get a lot of &amp;quot;Lost logs - increase log backend queue size&amp;quot;, but everything I try to do to fix that (following various suggestions from other threads here&amp;quot; cause only more problems&lt;/p&gt;
&lt;p&gt;I tried understanding why the log engine fails, but I went into a maze that keeps leading into the Softdevice dead end.&amp;nbsp;&lt;span&gt;I tried adding breakpoints (using Monitor mode Debugging to keep the BLE stack alive), but even that didn&amp;#39;t lead to any meaningful find: I always get to a point where a call into the Softdevice fails, with no extra information&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;I would appreciate if you found a way to enable logs on that example that allows to understand why be_evt_handler() in main.c is never called with a BL_GAP_EVT_DISCONNECTED when a connection is lost. As I said, I added a couple of NRF_LOG_INFO(_ for connected and disconnected in that handler, disabled the other logs, and I can see that many times the disconnected event is never reached. I could not find a combination of meaningful logs to enable that doesn&amp;#39;t lead to a hardfault in the code (which is not to say it&amp;#39;s impossible, just that I could not figure it out).&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I do understand it&amp;#39;s under experimental, but considering it&amp;#39;s been &amp;quot;experimental&amp;quot; for at least 2 years, it seems more abandoned than just experimental. In a way that&amp;#39;s what makes me wonder how prudent would be to base our OTA configuration strategy on the BLE UART CLI, given it seems to be a non-supported component. If even an example as simple as that one fails so badly (unrecoverable without a reset), adding CLI to a much more complex project, with multiple VS UUIDs seems to be looking for problems&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/274078?ContentTypeID=1</link><pubDate>Fri, 09 Oct 2020 14:20:12 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d10849e1-c403-4c2d-9843-a6cf56cef6a9</guid><dc:creator>Edvin</dc:creator><description>[quote user=""]at least 50% of the times, the PCA10056 device doesn&amp;#39;t get the disconnect event, and the device gets into a state where the BLE stack is not communicating anymore.[/quote]
&lt;p&gt;&amp;nbsp;Have you tried debugging this issue? Does the log from the nRF52840 say anything at this point?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;The example is located in the experimental folder, so it may not be properly tested.&lt;/p&gt;
&lt;p&gt;BR,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/273871?ContentTypeID=1</link><pubDate>Thu, 08 Oct 2020 20:12:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4a9c3caf-08a8-4fff-b7eb-512905cda66b</guid><dc:creator>robca</dc:creator><description>&lt;p&gt;You are right, we don&amp;#39;t... but that app works with every other BLE serial implementation. And, as long as I never lose connectivity, the app works just fine. The connectivity loss is not something the app handles anyway&lt;/p&gt;
&lt;p&gt;And, as I said, I can get the example in the same state by simply using the Nordic provided UART applet in nRF Toolbox. In a few cases, even just using the nRF Connect. So that Serial Terminal app is not the real problem, even assuming that is not 100% compatible&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: BLE APP CLI example (CLI over BLE UART): poor reliability</title><link>https://devzone.nordicsemi.com/thread/273870?ContentTypeID=1</link><pubDate>Thu, 08 Oct 2020 20:08:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1ea6b22a-158c-4652-85a9-c360c2c1b89b</guid><dc:creator>awneil</dc:creator><description>&lt;p&gt;just a thought:&lt;/p&gt;
[quote userid="88394" url="~/f/nordic-q-a/66906/ble-app-cli-example-cli-over-ble-uart-poor-reliability"]Android BLE Terminal emulator (I use this one&amp;nbsp;&lt;a href="https://play.google.com/store/apps/details?id=de.kai_morich.serial_bluetooth_terminal&amp;amp;hl=en&amp;amp;gl=US"&gt;https://play.google.com/store/apps/details?id=de.kai_morich.serial_bluetooth_terminal&amp;amp;hl=en&amp;amp;gl=US&lt;/a&gt;)[/quote]
&lt;p&gt;Note that there is no standard for &amp;quot;UART over BLE&amp;quot; - they&amp;#39;re all proprietary, manufacturer-specific services.&lt;/p&gt;
&lt;p&gt;So how do we know that this app has a reliable implementation of NUS ... ?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>