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.

CC3100MODBOOST: Exhausted TxPoolCnt in transceiver mode

Part Number: CC3100MODBOOST
Other Parts Discussed in Thread: CC3100, CC3200

I'm using the CC3100MODBOOST board in transceiver mode attached to another board for development.  I instrumented the simplelink driver to output the TxPoolCnt parameter obtained in _SlDrvMsgRead(). For some reason this pool count decreases and gets stuck at 1 or 2 and does not appear to recover. 

What can I do to avoid this situation?  My understanding is that this is the number of internal transmit buffers and that they are not being freed.

FW and driver versions:

ID(67108864) FW(31.1.5.0.2) PHY(1.0.3.37)
NWP(2.11.0.1) ROM(13107) HostDrv(1.0.1.11)

CC3100 0 STA mode
CC3100 0 Init complete
New TxPoolCnt 56
New TxPoolCnt 55
New TxPoolCnt 55
New TxPoolCnt 55
New TxPoolCnt 55
New TxPoolCnt 55
New TxPoolCnt 55
New TxPoolCnt 55
New TxPoolCnt 55
New TxPoolCnt 56
New TxPoolCnt 56
New TxPoolCnt 56
New TxPoolCnt 56
New TxPoolCnt 56
New TxPoolCnt 53
New TxPoolCnt 53
New TxPoolCnt 53
New TxPoolCnt 46
New TxPoolCnt 46
New TxPoolCnt 46
New TxPoolCnt 46
New TxPoolCnt 46
New TxPoolCnt 46
New TxPoolCnt 46
New TxPoolCnt 41
New TxPoolCnt 41
New TxPoolCnt 41
New TxPoolCnt 41
New TxPoolCnt 41
New TxPoolCnt 39
New TxPoolCnt 39
New TxPoolCnt 36
New TxPoolCnt 36
New TxPoolCnt 36
New TxPoolCnt 34
New TxPoolCnt 34
New TxPoolCnt 31
New TxPoolCnt 31
New TxPoolCnt 31
New TxPoolCnt 24
New TxPoolCnt 24
New TxPoolCnt 24
New TxPoolCnt 24
New TxPoolCnt 24
New TxPoolCnt 24
New TxPoolCnt 24
New TxPoolCnt 19
New TxPoolCnt 19
New TxPoolCnt 19
New TxPoolCnt 19
New TxPoolCnt 19
New TxPoolCnt 17
New TxPoolCnt 17
New TxPoolCnt 14
New TxPoolCnt 14
New TxPoolCnt 14
New TxPoolCnt 12
New TxPoolCnt 12
New TxPoolCnt 9
New TxPoolCnt 9
New TxPoolCnt 6
New TxPoolCnt 6
New TxPoolCnt 6
New TxPoolCnt 6
WriteOp TxPoolCnt 2, waiting.
WriteOp TxPoolCnt 1, waiting.
WriteOp TxPoolCnt 1, waiting.
New TxPoolCnt 1
New TxPoolCnt 1
New TxPoolCnt 1
New TxPoolCnt 1
New TxPoolCnt 1
New TxPoolCnt 1

  • Thanks for your quick response Jan.  I've already implemented the locking around the manipulation of TxPoolCnt as specified in the thread with the driver fix and that doesn't solve the problem.

    The TxPoolCnt values are coming in a message directly from the CC3100 in the _SlDrvMsgRead().  It is the part itself that is not freeing the buffers. They do not appear to be released even if I sit and wait once they have been exhausted.

    Do I need to do some sort of polling of the CC3100 when it is in this state?

  • Hi,

    I am sorry, it is long time ago and I don't remember all thing about this issue. I am not able say more information than is stated at that threads above.

    Jan

  • Ah.  I thought I read your older thread several times before but some of the messages are hidden.  I see now that you implemented WLANTxPoolProtection() to check the pool count and delay when the pool count is lower than 15.  It also returns an error on timeout so that you can close the socket.

    A couple of questions since there aren't more details:

    1. Was the delay sufficient to solve the main issue?

    2. How often would you need to close the socket (on timeout) and open a new one?

    3. When closing the socket did you just open a new one or did you also need to reset the CC3100?

  • Hi,

    Answers to your questions.

    1. Was the delay sufficient to solve the main issue?

    At my case it worked well. But as to be honest I don't use CC3200 any-more. I migrated my design to CC3220 as was available, because is much better than CC3200.

    2. How often would you need to close the socket (on timeout) and open a new one?

    I am not sure about your question. If you asking how often I was this issue, I remember that is was rare. I saw this issue mainly during load test in case of signal was poor. Lets say about 1x per 2-3 day during transferring hundreds of GB of data via CC3200.

    3. When closing the socket did you just open a new one or did you also need to reset the CC3100?

    In case issue occurred NWP restart was mandatory (sl_Stop(), sl_Start()), but if you not allow decrease TXPool under 15, it was enough wait a moment and after that continue with sending.

    Jan

  • Hm.  That wasn't particularly helpful.

    Instead of implementing my own version of WLANTxPoolProtection() , I changed FLOW_CONT_MIN to 15 from 1.  That way the flow control can be done properly and any waiting will be done with OS primitives instead of a 100ms delay loop.  It did not solve the problem though there was sufficient delay when reaching a TxPoolCnt of 15.

    Initially a bug in my code was sending multiple packets of 1472 bytes repeatedly until the pool count was exhausted.  It wouldn't ever recover.  I fixed my sending code and now I'm only sending 36 bytes every minute or so and I can still see the pool count dropping without any sign of recovery.

    Jan I appreciate your responses but how can I get official support on this CC3100 product?

  • Hi Patrick,

    Can you collect NWP logs?

    Best regards,

    Sarah

  • Ok.  I connected to the pin labeled CC_NWP_UART_TX on the CC3100MODBOOST schematic (labeled NWP on the board) and setup my serial port as specified.  The binary log covers the time period (3 - 4 minutes) from reset to when the TxPoolCnt hits 15 which matches the value I have set for FLOW_CONT_MIN.  At this point my transmits stop because the TxPoolCnt does not increase beyond 16.  I'm transmitting 36 bytes every 5 seconds.

    nwp1.log
    � -�-1{�@	��	��
    �
    
    �
    �	-�-1{�@
    �����
    �
    �*��
    �
    �	�
    �*� -0UT?��
    p*�33h����<^
    �*� D�X���E#
    �	��
    �
    ��
    
    �!
    '�/sys/servicepack.ucf
    ���`
    �
    -���`!-���`-���`@-���`8
    �
    �
    �-�	��`�
    ,���!	�
    �!
    '�/sys/servicepack.ucf
    ���`
    �
    -���`!
    �
    �
    �-���`4�w��w�w-�	��`�
    ,�*�� *�� �w
    �
    �
    ��5m�
    >m�nm��
    �
    �
    �
    �
    �
    �
    �
    
    �	-�-1{�@
    �
    	
    �>
    �!
    '�/sys/pmcfg.ini
    �I�-�I�
    �
    -�I�
    -�	I�
    �
    
    
    a"
    
    b*�c3p�
    �
    
    �!
    '�/sys/servicepack.ucf
    ���`
    �
    -���`!
    �
    -���`-���`@-���`8
    �
    �
    �
    �
    �-���`0-�	��`�
    ,��*�
    �!
    '�/sys/ipcfg.ini
    ���
    ��
    �!
    '�/sys/mode.cfg
    ���I-���I
    �
    -���I-���I<-�	��I
    �
    P
    Q
    $ ��
    �7�`� �t7�`�l 97�`إ �7�`�� T7�`�� �7�`dI �7�`,i 7w@� 0w
    2�`��	�
    �
    � 
    f�	
    g��	
    �!
    '�/sys/devname.cfg
    ��c
    ��	
    
    
    �����.�c�	�
    �!
    '�/sys/servicepack.ucf
    ���`
    �
    -���`!
    �
    
    �
    �
    �
    �
    �
    �
    �!
    '�/tmp/phy.cal
    �]��-�]��
    �
    
    ���
    �
    '�/sys/wlangen.ini
    ��j�N�PPPPPP P@P�PS�
    ��
    
    �.1
    �!
    '�/sys/macadd.bin
    ��q
    
    ��5V�2$^<��	
    �-���`D
    �-���`H��-���`P�
    �-���`0����-���`4��-���`<���.���-���`
    �-���`
    
    �-�	��`�
    ,�-�]����.���-�]����-�]���-�	]���
    �
    ���.�������%
    � �(.9
    (
    (
    �
    �!
    '�/sys/macadd.bin
    ��q
    
    ��5V�2$^<���	(
    �
    '�/sys/rxfltr.ini
    �����N
    �
    '�/sys/rxfltr.ini
    �����N�A
    �
    '�/sys/rxfltr.ini
    �����N�A�A"�A�A�A�A�A�B�B
    �!
    '�/sys/httpsrv.cfg
    �F�
    ��	�
    �
    P
    �!
    '�/sys/macadd.bin
    ��q
    
    ��5V�2$^<��
    �!
    '�/sys/mdns.cfg
    �[\
    ��B�B��B��A�A�A�B��A�A��
    �!
    '�/sys/macadd.bin
    ��q
    
    ��5V�2$^<���P�:.
    +
    �!
    '�/sys/p2p.cfg
    �o�
    ��.7.
    ,.CP�.4".`
    �-�
    g�	.mQR==�(�
    mmmmm�	/
    �!
    '�/sys/date_time.cfg
    �
    >(
    ��3�.'�.'�m..m..:m..'..?4...*, de�*, ���.*, ,-�*, �.s
    1[��
    s6)W$Vx�e\B.q)	
    2
    �!.0
    
    '�/sys/stacfg.ini
    �TU1
    7.2�-�TU
    �
    -�TUh-�	TU3
    �
    h
    K
    J#
    �
    �!
    '�/sys/pref.net
    ��-��
    �
    -��p-�	��
    p
    \
    6
    "
     
    
    **"*"71�0���<�Z`8	\�;	
    v"
    w"
    x"
    y"
    �"
    �"
    �"
    c"��%�
    
    
    '(#B#72�W)	f�
    6f4)	f)	2�"62)	2)	3�
    @$63)	3)	���!
    �
    �
    '�/sys/pref.net
    ��-��
    �
    -��p-�	��
    p
    'S�S6�)	�)	��
    a"
    
    b�!
    '�/sys/pmcfg.ini
    �I�-�I�
    �
    -�I�
    -�	I�
    �
    
    6�)	�*]"
    *�"
    Z"m)	���!
    '�/sys/mode.cfg
    ���I-���I
    �
    -���I-���I<-�	��I
    �
    P.=m6�)	�)	���!
    '�/sys/mode.cfg
    ���I-���I
    �
    -���I-���I<-�	��I
    �
    P6�)	�)	��
    J#
    �
    �!
    '�/sys/stacfg.ini
    �TU-�TU
    �
    -�TUh-�	TU
    �
    hS�S6�)	�)	��s{6�)	�71�D���<�-?����)	��ou
    
    mm"āWUW@u
    @mm.Fm� 0@6�)	)	
    �"āWUWAu
    Amm4m�t6�)	6
    +/z#-�t6�)	6
    +/zO6
    +/z<71�f�H�<�Z`6	\�;	*v"�$	k#*w"t)	
    x"
    y"
    �"
    �"��"-
    c"��*�
    
    
    '(#B'72�W�t6�)	6
    +/z()	
    �6
    +/z��t6�)	6
    +/z+71�f�H�<�Z`4	\�;	*v"L	�)*w"�P	
    x"
    y"�"�
    �"��"5
    c"��*�
    
    
    '(#B'72�W�t6�)	6
    +/z6)	
    �6
    +/z0�t6�)	6
    +/z.71�f�H�<�Z`2	\�:	*v"�L	�0*w"{Q	
    x"
    y"�"�
    �"��"#
    c"��*�
    
    "
    '(#B'72�W)	
    ��t6�)	6
    ��z^�)	
    �)	
    �)	
    �)	
    �6
    ��z���t6�)	6
    +/zi�6
    z,�71�f�H�<�Z`0	\�;	*v"T�
    *w"y�
    x"
    y"�"�
    �"��"!
    c"��*�
    
    ,
    '(#B'72�W�t6�)	6
    ��z/�)	
    ��t6�)	6
    zD'6
    +/z2%71�f�H�<�Z`.	\�;	*v"�V	�*w"}[	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    
    6
    '(#B'72�W�t6�)	6
    +/z46
    +/+z�4���t6�)	6
    +/z.)	
    �6
    ��z6�71�f�H�<�Z`,	\�;	*v"fU	�%*w"@Z	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    
    '(#B'72�W�t6�)	)	
    �6
    ��z��)	
    ��t6�)	6
    ��z��)	
    �6
    +/zJ�71�f�H�<�Z`*	\�;	*v"�	6�*w"�	
    x"
    y"
    �"
    �"��";
    c"��*�
    
    '(#B'72�W�t6�)	6
    +/zD�6
    zH��t6�)	)	
    �)	
    �6
    zc�71�f�H�<�Z`(	\�;	*v"D'	oN*w",	
    x"
    y"�">
    �"��"x
    c"��*�
    
    '(#B'72�W�t6�)	6
    ze6
    +/zOF�t6�)	6
    z-�)	
    �71�f�H�<�Z`&	\�;	*v"�R	�"*w"�W	
    x"
    y"�"�
    �"��"
    c"��*�
    "
    '(#B'72�W6
    nrzj��t6�)	6
    z2��t6�)	6
    +/z:�6
    +/z)�)	
    �71�f�H�<�Z`$	\�:	*v">T	�*w"�X	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    ,
    '(#B'72�W�t6�)	6
    +/zl6
    +/z4�t6�)	6
    +/+z#H6��)	
    �)	
    �71�f�H�<�Z`"	\�;	*v"�'	�Y*w"�,	
    x"
    y"�"J
    �"��"�
    c"��*�
    6
    '(#B'72�W6
    ��z���t6�)	)	
    �6
    z|�)	
    ��t6�)	6
    +/z�)	
    �6
    +/z��71�f�H�<�Z` 	\�;	*v"�^�*w"�
    x"
    y"
    �"�
    �"�
    �"
    c"��*�
    
    '(#B'72�W�t6�)	)	
    �6
    ��zs��t6�)	6
    cgz]�)	
    �6
    ��z$�)	
    �71�f�H�<�Z`	\�:	*v"�	��*w"�	
    x"
    y"�"�
    �"��"
    c"��*�
    
    '(#B'72�W�t6�)	)	
    �6
    +/z��6
    ��z.�t6�)	)	
    �6
    ��z��71�f�H�<�Z`	\�;	*v"�	l�*w"�	
    x"
    y"�"�
    �"��"�
    c"��*�
    
    '(#B'72�W�t6�)	6
    z��)	
    �6
    +/z2]�t6�)	6
    ��z,)	
    �71�f�H�<�Z`	\�:	*v"�4	,n*w"�9	
    x"
    y"�"�
    �"��"�
    c"��*�
    "
    '(#B'72�W6
    ��zF��t6�)	)	
    �6
    ��z{��t6�)	6
    z)�)	
    �6
    ��z��)	
    �71�f�H�<�Z`	\�;	*v"{	��*w"�	
    x"
    y"�"�
    �"��"�
    c"��*�
    ,
    '(#B'72�W�t6�)	6
    +/+z�X6��6
    z3�)	
    ��t6�)	)	
    �6
    ��zU�)	
    �71�f�H�<�Z`	\�;	*v"����*w"��
    x"
    y"
    �"�
    �"�
    �"%
    c"��*�
    6
    '(#B'72�W6
    +/z�z�t6�)	)	
    �)	
    �6
    ��z>�)	
    ��t6�)	6
    ��z�76
    +/z(	71�f�H�<�Z`	\�;	*v"2	��*w"�
    	
    x"
    y"
    �"4
    �"��"T
    c"��*�
    
    '(#B'72�W�t6�)	)	
    �6
    +/zB��t6�)	6
    +/zJ6
    ��z��)	
    �71�f�H�<�Z`	\�:	*v"�'	�l*w"�,	
    x"
    y"�"
    �"��"I
    c"��*�
    
    '(#B'72�W)	
    ��t6�)	)	
    �6
    ��zA�6
    +/zN��t6�)	6
    +/z871�f�H�<�Z`	\�;	*v":+	�}*w"O0	
    x"
    y"�"�
    �"��"1
    c"��*�
    
    '(#B'72�W71�f�H�<�Z`	\�	*v"Yg	<*w"�g	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    "
    '(#B'72�W=71�f�H�<�Z`	\�	*v"1o	*w"=o	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    ,
    '(#B'72�W�71�f�H�<�Z`	\�	*v"�k	*w"�k	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    6
    '(#B'72�W)

  • Thanks Patrick! I'll take a look at the logs and see what we can recreate. I'll give you an update on Friday.

    Best regards,

    Sarah

  • Hi Patrick,

    What parameters are you using to open your socket?

    I see an lot of SOCKET_TXFAILEDASYNCRESPONSE which looks like you are continually sending data to a socket that has hit an error, and you are unable to send the buffered data. Are you seeing this error in your socket callback? Closing the socket should free that memory, and we can dig into why the socket is failing.

    It also may be useful to test with the latest servicepack we released this week. There may be changes that affect socket behavior: http://www.ti.com/tool/download/CC3200SDK

    Best regards,

    Sarah

  • I'm opening the socket with this call:

            eSocket = sl_Socket( SL_AF_RF, SL_SOCK_RAW, 0 );

    When I do the send() of 36 bytes, I get a return value of 36 indicating that the send was successful.

    By socket callback are you referring to sl_SockEvtHdlr()?  I don't have that hooked up currently but will do so now.

    What exactly does SOCKET_TXFAILEDASYNCRESPONSE mean and why would it occur?

  • With the socket event handler hooked up I get this event now when trying to send in transceiver mode:

    CC3100 0 Socket TX failed event sd: 128 status: -116

  • Hi Patrick,

    The return value of sl_Send verifies that the transfer to the NWP was successful. Is -116 the first error you get on sl_SockEvtHdlr? Do you continue to send and see a different error later?

    Can you test with the latest servicepack 1.0.1.13-2.12.2.8 and capture NWP logs?

    Best regards,

    Sarah

  • Yes, that's the first error that I get and the only error value I see later.

    Can you provide a link to the 2.12.2.8 NWP download?  I do not see it on the SDK download page () nor the main page (processors.wiki.ti.com/.../CC3100_&_CC3200).

  • Hi Sarah, I'd love to try that newer version of the NWP firmware.  Where can I download it?  The CC3100 support pages all appear to be locked and have not been updated for quite a while.

  • Hi Patrick,

    Latest service pack (1.0.1.14-2.12.2.8) is available at CC3100 SDK downland page.

    Jan

  • 2.12.2.8 doesn't seem to make a difference.  NWP log attached below.

    Question:  I'm running in transceiver mode (Lvl1 == SL_SOCK_RAW) so I have assumed that there are no requirements on the format of the data being sent.  Is that a bad assumption?  Could the reason for the TX socket error event be that the data is being checked?

    nwp4.log
    71�k�x�8�Z`1	\�	*v"�p	*w"�p	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    
    '(#B'72�W�71�k�x�8�Z`1	\�	*v"�o	*w"p	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    !
    '(#B'72�WS
    � -�-1{�@	��	��
    �
    
    �
    �	-�-1{�@
    ���-
    �
    �*��
    �
    �	�
    �*� -0UT?��
    p*�33h����<^
    �*� D�X���E#
    �	��
    	
    ��
    �
    �!
    '�/sys/servicepack.ucf
    ���`
    �
    -���`!-���`-���`@-���`8
    �
    �
    �-�	��`�
    ��"	�
    �!
    '�/sys/servicepack.ucf
    ���`
    �
    -���`!
    �
    �
    �-���`�p��p�p�-�	��`�
    �*�� *�� �*�	 H
    �
    �
    ��s�
    +s�ws��
    �
    �
    �
    �
    �
    �
    �
    
    �	-�-1{�@
    �
    	
    �>
    �!
    '�/sys/pmcfg.ini
    �I�-�I�
    �
    -�I�
    -�	I�
    �
    
    
    a"
    
    b*�,
    ?>
    �
    
    �!
    '�/sys/servicepack.ucf
    ���`
    �
    -���`!
    �
    -���`-���`@-���`8
    �
    �
    �
    �
    �-���`�-�	��`�
    ��*�
    �!
    '�/sys/ipcfg.ini
    ���-���
    �
    -����-�	��
    �
    �
    �!
    '�/sys/mode.cfg
    ���I-���I
    �
    -���I-���I<-�	��I
    �
    P
    Q
    �
    �7�`� �t7�`�l 97�`إ �7�`�� T7�`�� �7�`dI �7�`,i 7w@� 0w
    2�`��	�
    �
    � 
    f�	
    g��	
    �!
    '�/sys/devname.cfg
    ��c
    ��	
    
    
    �����.�c�	�
    �!
    '�/sys/servicepack.ucf
    ���`
    �
    -���`!
    �
    
    �
    �
    �
    �
    �
    �
    �!
    '�/tmp/phy.cal
    �]��-�]��
    �
    
    ���
    �
    '�/sys/wlangen.ini
    ��j�N�
    �!
    '�supportedrates.cfg
    �˷�
    ��PPPPPP P@P�PS�
    ��
    
    �.1
    �!
    '�/sys/macadd.bin
    ��q
    
    ��5V�2$^<��	
    �-���`D
    �-���`H�L-���`PL
    �-���`���L�-���`���-���`����.���-���`��-���`�
    �-�	��`�
    �-�]����.���-�]����-�]���-�	]���
    �
    ���.�����
    ��%
    � �*.9
    *
    *
    �
    �!
    '�/sys/macadd.bin
    ��q
    
    ��5V�2$^<���	*
    �
    '�/sys/rxfltr.ini
    �����N
    �
    '�/sys/rxfltr.ini
    �����N�A
    �
    '�/sys/rxfltr.ini
    �����N�A�A"�A�A�A�A�A�B�B
    �!
    '�/sys/httpsrv.cfg
    �F�
    ��	�
    �
    P
    �!
    '�/sys/macadd.bin
    ��q
    
    ��5V�2$^<��
    �!
    '�/sys/mdns.cfg
    �[\
    ��B�B��B��A�A�A�B��A�A��
    �!
    '�/sys/macadd.bin
    ��q
    
    ��5V�2$^<���P�:.
    -
    �!
    '�/sys/p2p.cfg
    �o�
    ��.7.
    ..CP�.4".`
    �/�
    g�	.mQR==�(
    �!
    '�supportedrates.cfg
    �˷�
    ��
    �!
    '�supportedrates.cfg
    �˷�
    ���
    mmmmm�	1
    �!
    '�/sys/date_time.cfg
    �
    >(
    ��3�.'�.'�m..m..:m..'..?4...*, deL�8*, ��L�8.*, ,-0�8*, 0�8.s
    4[��
    s6)W$Vx�e\B.q)	
    4
    �!.0
    
    '�/sys/stacfg.ini
    �TU1
    7.2�-�TU
    �
    -�TUh-�	TU3
    �
    h
    K
    J#
    �
    �!
    '�/sys/pref.net
    ��-��
    �
    -��p-�	��
    p
    \
    8
    "
     
    
    **"*"71�3���8�Z`8	\�;	
    v"
    w"
    x"
    y"
    �"
    �"
    �"
    c"��%�
    *
    '(#B#72�W)	f�
    6f4)	f)	2�"62)	2)	3�
    @$63)	3)	���!
    �
    �
    '�/sys/pref.net
    ��-��
    �
    -��p-�	��
    p
    'S�S6�)	�)	��
    a"
    
    b�!
    '�/sys/pmcfg.ini
    �I�-�I�
    �
    -�I�
    -�	I�
    �
    
    6�)	�*]"
    *�"
    Z"m)	���!
    '�/sys/mode.cfg
    ���I-���I
    �
    -���I-���I<-�	��I
    �
    P.=m6�)	�)	���!
    '�/sys/mode.cfg
    ���I-���I
    �
    -���I-���I<-�	��I
    �
    P6�)	�)	��
    J#
    �
    �!
    '�/sys/stacfg.ini
    �TU-�TU
    �
    -�TUh-�	TU
    �
    hS�S6�)	�)	��s{6�)	�71�G���8�-?����)	��ou
    
    mm"āWUW@u
    @mm.Fm� 0@6�)	)	
    �"āWUWAu
    Amm4m�t6�)	6
    +/z*)�t6�)	6
    +/z 6
    +/z171�k�x�8�Z`6	\�;	*v"�*	n*w"k/	
    x"
    y"�"�
    �"��"�
    c"��*�
    4
    '(#B'72�W�t6�)	6
    +/z$6
    +/zG�t6�)	)	
    �6
    ��z371�k�x�8�Z`4	\�;	*v"X	�*w"�\	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    
    '(#B'72�W�t6�)	6
    +/z �6
    +/z-�t6�)	6
    nrz0�71�k�x�8�Z`2	\�;	*v"
    \	�*w"�`	
    x"
    y"�"l
    �"�
    �"�
    c"��*�
    
    '(#B'72�W�t6�)	6
    +/z%76
    +/z/�)	
    ��t6�)	6
    +/z!6
    +/z,71�k�x�8�Z`0	\�;	*v"�\	�*w"�a	
    x"
    y"�"b
    �"�
    �"�
    c�t6�)	6
    +/z,��t6�)	6
    +/z%6
    +/z/71�k�x�8�Z`.	\�;	*v"3\	�*w"a	
    x"
    y"�"c
    �"�
    �"�
    c�t6�)	6
    +/z%�6
    +/+z�3��)	
    ��t6�)	6
    +/z)6
    +/z/71�k�x�8�Z`,	\�;	*v"�[	�*w"�`	
    x"
    y"�"m
    �"�
    �"�
    c"��*�
    *
    '(#B'72�W�t6�)	6
    +/z �t6�)	6
    +/z6
    +/z$71�k�x�8�Z`*	\�;	*v"Ca	D*w"�e	
    x"
    y"�"?
    �"�
    �"|
    c"��*�
    4
    '(#B'72�W�t6�)	6
    +/z )	
    �6
    +/zP�t6�)	6
    +/z/71�k�x�8�Z`(	\�;	*v"�S	�(*w"�X	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    
    '(#B'72�W�t6�)	6
    +/z;6
    +/z4�t6�)	6
    +/z*)	
    �71�k�x�8�Z`&	\�;	*v"kZ	�)*w"P_	
    x"
    y"�"p
    �"�
    �"�
    c"��*�
    
    '(#B'72�W6
    +/z+�t6�)	6
    +/z7�t6�)	6
    +/z"6
    ��z*71�k�x�8�Z`$	\�;	*v"}\	�*w"Pa	
    x"
    y"�"^
    �"�
    �"�
    c"��*�
    
    '(#B'72�W�t6�)	6
    +/z$��t6�)	6
    +/z0)	
    �6
    +/+z�4��71�k�x�8�Z`"	\�;	*v"a[	�*w"/`	
    x"
    y"�"q
    �"�
    �"�
    c"��*�
     
    '(#B'72�W6
    +/z)�t6�)	6
    +/z*�t6�)	6
    +/zA6
    +/z*71�k�x�8�Z` 	\�;	*v"<Z	�*w"_	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    *
    '(#B'72�W�t6�)	)	
    �6
    +/z+�t6�)	6
    +/z6
    +/z371�k�x�8�Z`	\�;	*v"�\	�*w"za	
    x"
    y"�"^
    �"�
    �"�
    c"��*�
    4
    '(#B'72�W�t6�)	6
    +/z06
    +/z)�t6�)	6
    +/z?)	
    �71�k�x�8�Z`	\�;	*v"_X	�$*w"A]	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    
    '(#B'72�W�t6�)	6
    +/z!�6
    ��z)�t6�)	6
    +/z*�71�k�x�8�Z`	\�;	*v"[	�*w"�_	
    x"
    y"�"p
    �"�
    �"�
    c"��*�
    
    '(#B'72�W6
    +/z6�t6�)	6
    +/z*�t6�)	6
    +/z")	
    �6
    +/z371�k�x�8�Z`	\�;	*v"e\	�*w"9a	
    x"
    y"�"d
    �"�
    �"�
    c"��*�
    
    '(#B'72�W�t6�)	6
    +/+z�3��6
    +/z#�t6�)	6
    +/z 71�k�x�8�Z`	\�;	*v"Z_	�*w",d	
    x"
    y"�"P
    �"�
    �"�
    c"��*�
     
    '(#B'72�W6
    ��z&�t6�)	6
    nrz8��t6�)	6
    +/z,?)	
    �6
    +/z:�71�k�x�8�Z`	\�;	*v"MX	�*w"%]	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    *
    '(#B'72�W�t6�)	6
    +/z!�t6�)	6
    +/z96
    +/z971�k�x�8�Z`	\�;	*v"xY	�*w"L^	
    x"
    y"�"z
    �"�
    �"�
    c"��*�
    4
    '(#B'72�W�t6�)	6
    +/z&)	
    �6
    nrz<��t6�)	6
    nrz*�71�k�x�8�Z`	\�;	*v"�S	�*w"�X	
    x"
    y"�"�
    �"�
    �"�
    c"��*�
    
    '(#B'72�W71�k�x�8�Z`	\�	*v"�m	*w"�m	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    
    '(#B'72�W�71�k�x�8�Z`	\�	*v"q	*w"#q	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    
    '(#B'72�W�71�k�x�8�Z`	\�	*v"q	*w"q	
    x"
    y"
    �"
    �"
    �"
    c"��*�
     
    '(#B'72�Wu71�k�x�8�Z`	\�	*v"�p	
    *w"�p	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    *
    '(#B'72�W�71�k�x�8�Z`	\�	*v"Vp	*w"]p	
    x"
    y"
    �"
    �"
    �"
    c"��*�
    4
    '(#B'72�W�

  • Hi Sarah, were the NWP logs I posted on the 24th helpful in narrowing down the cause of the TX error?  Also, can you comment on my questions in the previous post?

  • Looks like my issue was that I was setting the flags parameter of sl_Send() to zero.  According to the documentation, It's ok to set this parameter to zero but that's when I get the TX error.

    Right now I'm setting channel=11, rate=11M, Power=1, Preamble=1 and I'm not getting the same error.  Which of these settings are required?  Can I set any of them to zero so that they do not override the default?  The documentation is unclear.  I'm not interested in overriding the socket parameters (channel, rate, power or preamble) on each send.

  • Hi Patrick,

    Apologies for the delay. We tracked down the source of the -116 error, which is due to no PHY parameters available.

    It looks like there are no internal defaults set for transceiver mode, so you are right on track. Can you try setting all those parameters with sl_SetSockOpt() first? Once set, you should be able to default to those parameters using sl_Send as you did before.

    Best regards,

    Sarah

  • Yes, it appears that setting the preamble parameter is sufficient to get it working.  Unfortunately the documentation does not make this clear at all.  The parameters appear to be optional in _all_ references.

    I think we can consider this closed at this point.  Thanks.

  • Hi Patrick,

    It looks like the documentation was updated in our newer generation devices but not CC3100. I'll make a request for this.

    Best regards,

    Sarah