This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2541, SDK 1.4.2 with Android 5.0, LG phone G3 - issue with this unique combination

Other Parts Discussed in Thread: CC2541

This is a related post to the following thread:

 

The reason I created a new thread is because the problem this customer is having seems to be the opposite of what is discussed in the thread above. 

SDK 1.4.0 on CC2541 seems to work fine with the LG phone G3, running Android 5.0, but presents issues when using stack 1.4.2. Here is the wireshark log:

btsnoop���	`�~ @@��	`� ��	`�� ��	`�� ��	`�u ��	`�� ��	`Ž @@��	`� ��	`ͤ @@��	`Ϙ ��	`�) ��	`�J ��	c�K 00��	c�0 ��	c�� ��	c�< ��	c�N @@��	c� ��	c�{ @@��	c�r ��	c�k ��	c�g ��	c� ��	d� ��	d� @@��	d= ��	d� @@��	ds ��	d#� ��	d,- **��	e�h>'ڮx���V������F}n�"��
�,,��	q)>)JqC��lU��mHܬ���v���++��	q�>(JqC��lBTRLB
�v����	���,,��	qi.>)JqC��lU��mHܬ���v���,,��	r/>)JqC��lU��mHܬ���v���,,��	r�>)JqC��lU��mHܬ���v���,,��	sO�>)JqC��lU��mHܬ���v���,,��	t��>)JqC��lU��mHܬ���v���,,��	t�.>)JqC��lU��mHܬ���v���,,��	uV;>)JqC��lU��mHܬ���v���,,��	u�F>)JqC��lU��mHܬ���v���,,��	vX>)JqC��lU��mHܬ���v���,,��	v�>)JqC��lU��mHܬ���v���,,��	v��>)JqC��lU��mHܬ���v���,,��	wy>)JqC��lU��mHܬ���v���,,��	w�>)JqC��lU��mHܬ���v���,,��	y6>)JqC��lU��mHܬ���v���,,��	y:g>)JqC��lU��mHܬ���v���,,��	y��>)JqC��lU��mHܬ���v���**��	y��>'ڮx���V������F}n�"��
���	y��>ڮx��		Flex
��,,��	y�^>)JqC��lU��mHܬ���v���,,��	z�a>)JqC��lU��mHܬ���v���,,��	{5M>)JqC��lU��mHܬ���v���,,��	{�t>)JqC��lU��mHܬ���v���,,��	|>)JqC��lU��mHܬ���v���,,��	|]U>)JqC��lU��mHܬ���v���,,��	|�v>)JqC��lU��mHܬ���v���,,��	}w�>)JqC��lU��mHܬ���v���,,��	}�->)JqC��lU��mHܬ���v���,,��	~C�>)JqC��lU��mHܬ���v���,,��	~��>)JqC��lU��mHܬ���v���,,��	�n>)JqC��lU��mHܬ���v���,,��	�5�>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�� >)JqC��lU��mHܬ���v���,,��	��O>)JqC��lU��mHܬ���v���,,��	�.s>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�[�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�:�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�
�>)JqC��lU��mHܬ���v���,,��	�u>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�K�>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�ck>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�y>)JqC��lU��mHܬ���v���,,��	�l�>)JqC��lU��mHܬ���v���,,��	��m>)JqC��lU��mHܬ���v���**��	�j�>'ڮx���V������F}n�"��
�,,��	���>)JqC��lU��mHܬ���v���,,��	��^>)JqC��lU��mHܬ���v���,,��	�S�>)JqC��lU��mHܬ���v���,,��	�	�>)JqC��lU��mHܬ���v���,,��	��%>)JqC��lU��mHܬ���v���,,��	� +>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�b�>)JqC��lU��mHܬ���v���,,��	��~>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�`>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�X�>)JqC��lU��mHܬ���v���,,��	��n>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�:6>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�<>)JqC��lU��mHܬ���v���,,��	�c3>)JqC��lU��mHܬ���v���,,��	�1�>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�ߤ>)JqC��lU��mHܬ���v���,,��	�P�>)JqC��lU��mHܬ���v���$$��	�Pg>!D@ ����г˄�B����˜��	�S7>D@ ���,,��	��>)JqC��lU��mHܬ���v���,,��	��T>)JqC��lU��mHܬ���v���,,��	�H:>)JqC��lU��mHܬ���v���,,��	�
>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�է>)JqC��lU��mHܬ���v���,,��	�@�>)JqC��lU��mHܬ���v���,,��	�#7>)JqC��lU��mHܬ���v���,,��	��n>)JqC��lU��mHܬ���v���,,��	�:�>)JqC��lU��mHܬ���v���,,��	�	m>)JqC��lU��mHܬ���v���**��	�<>'ڮx���V������F}n�"��
�,,��	�|>>)JqC��lU��mHܬ���v���,,��	�6�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��	>)JqC��lU��mHܬ���v���,,��	�Te>)JqC��lU��mHܬ���v���,,��	��{>)JqC��lU��mHܬ���v���,,��	�'>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���$$��	�$g>!D@ ����г˄�B����˟,,��	�H�>)JqC��lU��mHܬ���v���,,��	��R>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�>)JqC��lU��mHܬ���v���,,��	�\w>)JqC��lU��mHܬ���v���,,��	��7>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	��W>)JqC��lU��mHܬ���v���,,��	�Y�>)JqC��lU��mHܬ���v���,,��	�Ƙ>)JqC��lU��mHܬ���v���,,��	�3�>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�p�>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�6>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�ܫ>)JqC��lU��mHܬ���v���,,��	��8>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�L%>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�	�>)JqC��lU��mHܬ���v���,,��	�ۗ>)JqC��lU��mHܬ���v���,,��	�;>)JqC��lU��mHܬ���v���,,��	��W>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�K@>)JqC��lU��mHܬ���v���,,��	��y>)JqC��lU��mHܬ���v���,,��	�C�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�h>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���**��	�>'ڮx���V������F}n�"��
�,,��	�r�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�/�>)JqC��lU��mHܬ���v���,,��	��
>)JqC��lU��mHܬ���v���,,��	�r>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�O�>)JqC��lU��mHܬ���v���,,��	��d>)JqC��lU��mHܬ���v���,,��	�T>)JqC��lU��mHܬ���v���,,��	�hO>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���$$��	��>!D@ ����г˄�B����ˠ,,��	��>)JqC��lU��mHܬ���v���,,��	�&�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���$$��	��w>!D@ ����г˄�B����˝,,��	�[>)JqC��lU��mHܬ���v���,,��	�n>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���$$��	�T>!D@ ����г˄�B����ˠ,,��	�tJ>)JqC��lU��mHܬ���v���,,��	��d>)JqC��lU��mHܬ���v���,,��	�6>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�F%>)JqC��lU��mHܬ���v���,,��	��`>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�m�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�?�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�
l>)JqC��lU��mHܬ���v���,,��	�o>)JqC��lU��mHܬ���v���,,��	��+>)JqC��lU��mHܬ���v���,,��	Ç�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�E!>)JqC��lU��mHܬ���v���,,��	ĺ�>)JqC��lU��mHܬ���v���,,��	�*s>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	Ƌ=>)JqC��lU��mHܬ���v���,,��	��c>)JqC��lU��mHܬ���v���,,��	�Mz>)JqC��lU��mHܬ���v���,,��	ǣ->)JqC��lU��mHܬ���v���,,��	�
�>)JqC��lU��mHܬ���v���,,��	�W�>)JqC��lU��mHܬ���v���,,��	ȷ\>)JqC��lU��mHܬ���v���**��	��>'ڮx���V������F}n�"��
�,,��	� �>)JqC��lU��mHܬ���v���,,��	�z�>)JqC��lU��mHܬ���v���,,��	��(>)JqC��lU��mHܬ���v���,,��	�R#>)JqC��lU��mHܬ���v���$$��	ʁ�>!D@ ����г˄�B����ˢ,,��	ʰU>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�}>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�9�>)JqC��lU��mHܬ���v���,,��	��k>)JqC��lU��mHܬ���v���,,��	ξ�>)JqC��lU��mHܬ���v�����	��0 ��	�ׄ ��	��� @@��	�މ ��	��� 00��	��i ��	҅

 `0JqC��l(���	Ҏa
 ��	�'�>JqC��l'���	�. ��	�1� ��	�x�>��	Ռ�%
��	��o��	ִ� 	%��	���
%��	�r���	�1 U��mHܬ����	ڜ���	ګ��	گ� @@��	ھ� ��	��H ��	��* ��	�� ��	��; ��	��� @@��	��� ��	�
� @@��	�~ ��	� � ��	�#� ��	�2� 00��	�4X ��	�Dd,,��	ܴR>)JqC��lU��mHܬ���v���++��	ܹ�>(JqC��lBTRLB
�v����	���,,��	��>)JqC��lU��mHܬ���v���,,��	�~v>)JqC��lU��mHܬ���v���$$��	�L�>!D@ ����г˄�B����˟,,��	�l>)JqC��lU��mHܬ���v���$$��	ߺ:>!D@ ����г˄�B����ˠ��	�ģ>D@ ���,,��	���>)JqC��lU��mHܬ���v���,,��	�(�>)JqC��lU��mHܬ���v���$$��	�^�>!D@ ����г˄�B����˟,,��	��>)JqC��lU��mHܬ���v���,,��	�d>)JqC��lU��mHܬ���v���,,��	�		>)JqC��lU��mHܬ���v���,,��	�Xf>)JqC��lU��mHܬ���v���,,��	�GO>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�S0>)JqC��lU��mHܬ���v���,,��	嫝>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�tE>)JqC��lU��mHܬ���v���,,��	�z>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�$
>)JqC��lU��mHܬ���v���,,��	��{>)JqC��lU��mHܬ���v���,,��	�3E>)JqC��lU��mHܬ���v���,,��	�T>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���$$��	�<�>!D@ ����г˄�B����˝,,��	�>)JqC��lU��mHܬ���v���,,��	�nn>)JqC��lU��mHܬ���v���,,��	��[>)JqC��lU��mHܬ���v���,,��	�LV>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�sO>)JqC��lU��mHܬ���v���,,��	�1>)JqC��lU��mHܬ���v���,,��	�)�>)JqC��lU��mHܬ���v���,,��	� >)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�� >)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�nr>)JqC��lU��mHܬ���v���$$��	��>!D@ ����г˄�B����ˡ,,��	�D�>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�ǧ>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�>)JqC��lU��mHܬ���v���,,��	�^|>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�%�>)JqC��lU��mHܬ���v���,,��	�p�>)JqC��lU��mHܬ���v���,,��	�۱>)JqC��lU��mHܬ���v���,,��	�7�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�o�>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	�;�>)JqC��lU��mHܬ���v���,,��	�o,>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	���>)JqC��lU��mHܬ���v���,,��	��G>)JqC��lU��mHܬ���v���,,��	��>)JqC��lU��mHܬ���v���,,��	�a�>)JqC��lU��mHܬ���v���,,��	��@>)JqC��lU��mHܬ���v���,,��
�>)JqC��lU��mHܬ���v���,,��
�X>)JqC��lU��mHܬ���v���,,��
�>)JqC��lU��mHܬ���v���,,��
K�>)JqC��lU��mHܬ���v���,,��
�F>)JqC��lU��mHܬ���v�����
�� ��
�t ��
�� @@��
�m ��
�
 00��
�t 

Frame 253 shows a write request followed by error 0x03 (Write not permitted) in frame 255. We believe the stack is generating that error, since it is not being used in this particular application. Occasionally the connection works, maybe for a couple of days, to then go back into showing the error consistently for weeks. 

An interesting aspect is that the same phone when running a different Android version does not present the problem. 

Could this be a timing issue? 

Thank you!

  • Hi Lenio,

    Is there a log where the write to this handle is successful? Can they connect with BTool (+ CC2540USB dongle or CC2650LP running HostTest) and confirm they can write to this handle successfully with the same value?

    Best wishes
  • The issue has been resolved.

    Some Android phones cache the handles of a previous connection, without necessarily rediscovering handles every time. Thus when the CC2541 firmware is updated and new characteristics are added, the phone will still try to connect to the previously saved handles, creating errors such as write-not-permitted. The fix can happen at the CC2541 by eliminating the extra characteristics, which is certainly not the most elegant neither the one I would recommend, or at the phone by forcing the Android App to clear the cache at every connection attempt.