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.

CC3220MOD: CC3220MOD lock state

Part Number: CC3220MOD
Other Parts Discussed in Thread: UNIFLASH

Hi team,

The customer has feedback that the lock issue happened again after migrating to SDK 6_10_00_05. Please kindly assist to suggest what could cause this issue, thanks.

Best regards,

Shuyang

  • Hi,

    Please exactly what you mean by lock issue.

    Is this thread based on an older thread?

    Thanks,

    Shlomi

  • Hi Shlomi,

    The issue is exactly the same as the old thread. Any suggestions?

    BR,

    Shuyang

  • Can you please point me to the previous thread?

  • So the customer started clean and upgraded the SDK (and servicepack?) and the it happened again?

    As Jan suggested in the previous post, lock state may happen because of the 2nd bootloader implementation.

    In lock state, there is no way to recover other than to reprogram the device.

    Most lock states are as a result of bad security operations with the file system and I am not sure what you did.

    Shlomi

  • Hi Shlomi,

    The customer upgraded the SDK but not the servicepack, they are using the servicepack coming with the CC3220MOD from factory.

    Below is the Uniflash readout from 2 locked module and 1 normal module:

    locked module sdk_2_10_00_04:

    locked module sdk_6_10_00_05:

    Normal module:

    Some more background: the customer only updated the application code, but not the 2nd bootloader. The 2nd bootloader can start normally and load the application, application print log shows the device is locked.

    BR,

    Shuyang

  • Hi,

    Hard to tell just from the description why NWP got locked.

    The only way is maybe to connect an NWP logger and capture but if the application is stuck I am not sure it is doable.

    Just to double check, you are stuck on sl_Start() API, right?

    Shlomi

  • Hi Shlomi,

    The program does not stuck on sl_Start(), but on sl_WlanPolicySet() and sl_DeviceGet().

    sl_WlanPolicySet(): [line:688, error code:-14343] WLAN error, please refer "WLAN ERRORS CODES" section in errors.h

    sl_DeviceGet(): [line:24, error code:-2011] Device error, please refer "DEVICE ERRORS CODES" section in errors.h

    BR,

    Shuyang

  • Thanks,

    So at least sl_Start() works so you can mux out the NWP logger.

    Can you please follow the procedure described in the following post and check if you can capture logs?

    https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/1050010/cc3220s-aws-iot-mqtt-connect-issue/3915033#3915033

    Shlomi

  • Hi Shlomi,

    Please find the log as attached:

    CC3220S_Abnormal_ModuleA_logger.log
    =~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2022.12.06 20:40:40 =~=~=~=~=~=~=~=~=~=~=~=
    
    � -�-1{�(	��	��
    �
    
    
    �
    �	-�-1{�( Lc
    �
    �
    �
    ���
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J-��J�-�	�J����
    �*��1
    �
    �	�
    �*� 
    �
    ��;�O	z.*���<q\
    �*� x�B�1��
    �	��
    
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(
    ���	��
    ����
    !+)��`aaA
    �-�-1{�(
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J
    �-��J�-�	�J��`aaA
    	
    �!
    '�/sys/mdmpcfg.ini
    ��I��Fe(
    �!
    '�/sys/pmcfg.ini
    �I��Fe(
    \
    a"<b*��m
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(�*�1
    �!
    '�/sys/ipcfg.ini
    ���-���
    �-���4-���4�-�	��
    ��
    �!
    '�/sys/mode.cfg
    ���I-���I
    �-���I4-���I4P-�	��I
    ��
    Q
    �
    �7�`  7�` $ @M7�``q H7�`�� l7�`� 0�7�`DI � 7�`�i  7w@  �h
    2�`��	
    �
    � 
    f�	
    g��	
    �!
    '�/sys/devname.cfg
    ��c-��c
    �-��c4-��c4b-�	�c
    ��
    	
    
    �����.���	�
    �
    �
    �!
    '�/tmp/phy.cal
    �]��-�]��
    �
    ����PPPPPP P@P�PS�
    	��
    
    	�.�1
    �!
    '�/sys/macadd.bin
    ��q
    �Fe(5V<�2$\q	
    �
    �
    ����
    �
    �-�]������-�]������
    �!
    '�/sys/sign.bin
    �4s��Fe(-�]���-�	]����
    ���.��������.
    �
    ��
    �
    l 
    �
    ��	
    �
    '�/sys/rxfltr.ini
    ������e(��e(
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A�A"�A�A�A�A�A�A�B�B	
    
    �!
    '�/sys/httpsrv.cfg
    �F�-�F�
    �-�F�4-�F�4�-�	F���
    ��� ���� �	
    �
    �P
    
    �!
    '�/sys/mdns.cfg
    �[\-�[\
    �-�[\4-�[\4�-�	[\�B�B��B��A�A�A�B����P�:.C
    
    �!
    '�/sys/p2p.cfg.`
    �o��Fe(
    ��
    g�	.�	
    �!
    '�/sys/date_time.cfg
    �
    >(�Fe(3a.0
    17QR==�(�
    .2�3.'<�.'<�....:..'..?4*, de�D*, ���D*, ,-�D.*, LD.
    ..2`aaA.r
    s6)	
    )W$e�xV.
    �\��.p
    �!
    '�/sys/stacfg.ini
    �TU-�TU
    �-�TU4-�TU4t-�	TU
    ��
    K
    J#
    �#
    �!
    '�/sys/pref.net
    ��-��
    �-��4-��4`a	aA6x�)	x�5r(-�	��D�Xr(6x�)	x)q#�����RNS�1"D��
    E
    T��:
    ")	��
    "�!86��)	�D��
    {
    #
     
    
    **"*"
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71�l�x�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b4
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E	6x�)	x
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��T�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��LT�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    $
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71� �T�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    .
    '(#B72�$"΀�
    E
    @
    @
    @D��
    � -�-1{�(	��	��
    �
    
    
    �
    �	-�-1{�( Lc
    �
    �
    �
    ���
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J-��J�-�	�J����
    �*��1
    �
    �	�
    �*� 
    �
    ��;�O	z.*���<q\
    �*� x�B�1��
    �	��
    
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(
    ���	��
    ����
    !+)��`aaA
    �-�-1{�(
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J
    �-��J�-�	�J��`aaA
    	
    �!
    '�/sys/mdmpcfg.ini
    ��I��Fe(
    �!
    '�/sys/pmcfg.ini
    �I��Fe(
    \
    a"<b*��e
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(�*�1
    �!
    '�/sys/ipcfg.ini
    ���-���
    �-���4-���4�-�	��
    ��
    �!
    '�/sys/mode.cfg
    ���I-���I
    �-���I4-���I4P-�	��I
    ��
    Q
    �
    �7�`  7�` $ @M7�``q H7�`�� l7�`� 0�7�`DI � 7�`�i  7w@  �h
    2�`��	
    �
    � 
    f�	
    g��	
    �!
    '�/sys/devname.cfg
    ��c-��c
    �-��c4-��c4b-�	�c
    ��
    	
    
    �����.���	�
    �
    �
    �!
    '�/tmp/phy.cal
    �]��-�]��
    �
    ����PPPPPP P@P�PS�
    	��
    
    	�.�1
    �!
    '�/sys/macadd.bin�����.
    �
    ��
    �
    l 
    �
    ��	
    �
    '�/sys/rxfltr.ini
    ������e(��e(
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A�A"�A�A�A�A�A�A�B�B	
    
    �!
    '�/sys/httpsrv.cfg
    �F�-�F�
    �-�F�4-�F�4�-�	F���
    ��� ���� �	
    �
    �P
    
    �!
    '�/sys/mdns.cfg
    �[\-�[\
    �-�[\4-�[\4�-�	[\�B�B��B��A�A�A�B����P�:.C
    
    �!
    '�/sys/p2p.cfg.`
    �o��Fe(
    ��
    g�	.�	
    �!
    '�/sys/date_time.cfg
    �
    >(�Fe(3a.0
    17QR==�(�
    .2�3.'<�.'<�....:..'..?4*, de�D*, ���D*, ,-�D.*, LD.
    ..2`aaA.r
    s6)	
    )W$e�xV.
    �\��.p
    �!
    '�/sys/stacfg.ini
    �TU-�TU
    �-�TU4-�TU4t-�	TU
    ��
    K
    J#
    �#
    �!
    '�/sys/pref.net
    ��-��
    �-��4-��4`a	aA6x�)	x�5r(-�	��D�Xr(6x�)	x)q#�����RNS�1"D��
    E
    T��:
    ")	��
    "�!86��)	�D��
    {
    #
     
    
    **"*"
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71�l�x�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b4
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E	6x�)	x
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��T�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��LT�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    $
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71� �T�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    .
    '(#B72�$"΀�
    E
    @
    @
    @D��
    � -�-1{�(	��	��
    �
    
    
    �
    �	-�-1{�( Lc
    �
    �
    �
    ���
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J-��J�-�	�J����
    �*��1
    �
    �	�
    �*� 
    �
    ��;�O	z.*���<q\
    �*� x�B�1��
    �	��
    
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(
    ���	��
    ����
    !+)��`aaA
    �-�-1{�(
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J
    �-��J�-�	�J��`aaA
    	
    �!
    '�/sys/mdmpcfg.ini
    ��I��Fe(
    �!
    '�/sys/pmcfg.ini
    �I��Fe(
    \
    a"<b*��l
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(�*�1
    �!
    '�/sys/ipcfg.ini
    ���-���
    �-���4-���4�-�	��
    ��
    �!
    '�/sys/mode.cfg
    ���I-���I
    �-���I4-���I4P-�	��I
    ��
    Q
    �
    �7�`  7�` $ @M7�``q H7�`�� l7�`� 0�7�`DI � 7�`�i  7w@  �h
    2�`��	
    �
    � 
    f�	
    g��	
    �!
    '�/sys/devname.cfg
    ��c-��c
    �-��c4-��c4b-�	�c
    ��
    	
    
    �����.���	�
    �
    �
    �!
    '�/tmp/phy.cal
    �]��-�]��
    �
    ����PPPPPP P@P�PS�
    	��
    
    	�.�1
    �!
    '�/sys/macadd.bin
    ��q
    �Fe(5V<�2$\q	
    �
    �
    ����
    �
    �-�]������-�]������
    �!
    '�/sys/sign.bin
    �4s��Fe(-�]���-�	]����
    ���.��������.
    �
    ��
    �
    l 
    �
    ��	
    �
    '�/sys/rxfltr.ini
    ������e(��e(
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A�A"�A�A�A�A�A�A�B�B	
    
    �!
    '�/sys/httpsrv.cfg
    �F�-�F�
    �-�F�4-�F�4�-�	F���
    ��� ���� �	
    �
    �P
    
    �!
    '�/sys/mdns.cfg
    �[\-�[\
    �-�[\4-�[\4�-�	[\�B�B��B��A�A�A�B����P�:.C
    
    �!
    '�/sys/p2p.cfg.`
    �o��Fe(
    ��
    g�	.�	
    �!
    '�/sys/date_time.cfg
    �
    >(�Fe(3a.0
    17QR==�(�
    .2�3.'<�.'<�....:..'..?4*, de�D*, ���D*, ,-�D.*, LD.
    ..2`aaA.r
    s6)	
    )W$e�xV.
    �\��.p
    �!
    '�/sys/stacfg.ini
    �TU-�TU
    �-�TU4-�TU4t-�	TU
    ��
    K
    J#
    �#
    �!
    '�/sys/pref.net
    ��-��
    �-��4-��4`a	aA6x�)	x�5r(-�	��D�Xr(6x�)	x)q#�����RNS�1"D��
    E
    T��:
    ")	��
    "�!86��)	�D��
    {
    #
     
    
    **"*"
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71�l�x�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b4
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E	6x�)	x
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��T�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��LT�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    $
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    

    CC3220S_Abnormal_ModuleB_logger.log
    =~=~=~=~=~=~=~=~=~=~=~= PuTTY log 2022.12.06 20:53:28 =~=~=~=~=~=~=~=~=~=~=~=
    
    � -�-1{�(	��	��
    �
    
    
    �
    �	-�-1{�( LS
    �
    �
    �
    ���
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J-��J�-�	�J����
    �*��1
    �
    �	�
    �*� )���M"��	�N*��� �C�x
    �*� Dx�B�1��
    �	��
    
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(
    ���	��
    ����
    +)��`aaA
    �-�-1{�(
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J
    �-��J�-�	�J��`aaA
    	
    �!
    '�/sys/mdmpcfg.ini
    ��I��Fe(
    �!
    '�/sys/pmcfg.ini
    �I��Fe(
    \
    a"<b*�	j
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(�*�1
    �!
    '�/sys/ipcfg.ini
    ���-���
    �-���4-���4�-�	��
    ��
    �!
    '�/sys/mode.cfg
    ���I-���I
    �-���I4-���I4P-�	��I
    ��
    Q
    �
    �7�`  7�` $ @M7�``q H7�`�� l7�`� 0�7�`DI � 7�`�i  7w@  �h
    2�`��	
    �
    � 
    f�	
    g��	
    �!
    '�/sys/devname.cfg
    ��c-��c
    �-��c4-��c4b-�	�c
    ��
    	
    
    �����.���	�
    �
    �
    �!
    '�/tmp/phy.cal
    �]��-�]��
    �
    ����PPPPPP P@P�PS�
    	��
    
    	�.�1
    �!
    '�/sys/macadd.bin
    ��q
    �Fe(5V �2$x�C�	
    �
    �
    ����
    �
    �-�]������-�]������
    �!
    '�/sys/sign.bin
    �4s��Fe(-�]���-�	]����
    ���.��������.
    �
    ��
    �
    l 
    �
    ��	
    �
    '�/sys/rxfltr.ini
    ������e(��e(
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A�A"�A�A�A�A�A�A�B�B	
    
    �!
    '�/sys/httpsrv.cfg
    �F�-�F�
    �-�F�4-�F�4�-�	F���
    ��� ���� �	
    �
    �P
    
    �!
    '�/sys/mdns.cfg
    �[\-�[\
    �-�[\4-�[\4�-�	[\�B�B��B��A�A�A�B����P�:.C
    
    �!
    '�/sys/p2p.cfg.`
    �o��Fe(
    ��
    g�	.�	
    �!
    '�/sys/date_time.cfg
    �
    >(�Fe(3a.0
    17QR==�(�
    .2�3.' �.' �....:..'..?4*, de�D*, ���D*, ,-�D.*, LD.
    ..2`aaA.r
    s6)	
    )W$e�xV.
    �\��.p
    �!
    '�/sys/stacfg.ini
    �TU-�TU
    �-�TU4-�TU4t-�	TU
    ��
    K
    J#
    �#
    �!
    '�/sys/pref.net
    ��-��
    �-��4-��4`a	aA6x�)	x�5r(-�	��D�Xr(6x�)	x)q#�����RNS�1"D��
    E
    T��:
    ")	��
    "�!86��)	�D��
    {
    #
     
    
    **"*"
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71�l�x�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b3
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E	6x�)	x
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��T�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��LT�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    $
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71� �T�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    .
    '(#B72�$"΀�
    E
    @
    @
    @D��
    � -�-1{�(	��	��
    �
    
    
    �
    �	-�-1{�( LS
    �
    �
    �
    ���
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J-��J�-�	�J����
    �*��1
    �
    �	�
    �*� )���M"��	�N*��� �C�x
    �*� Dx�B�1��
    �	��
    
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(
    ���	��
    ����
    +)��`aaA
    �-�-1{�(
    �!
    '�/sys/certstore.lst
    ��J
    �
    
    �
    -��J
    �-��J�-�	�J��`aaA
    	
    �!
    '�/sys/mdmpcfg.ini
    ��I��Fe(
    �!
    '�/sys/pmcfg.ini
    �I��Fe(
    \
    a"<b*�ec
    �
    �
    '�/sys/servicepack.ucf
    ���`��e(��e(
    �!
    '�/sys/servicepack.ucf
    ���`�Fe(�*�1
    �!
    '�/sys/ipcfg.ini
    ���-���
    �-���4-���4�-�	��
    ��
    �!
    '�/sys/mode.cfg
    ���I-���I
    �-���I4-���I4P-�	��I
    ��
    Q
    �
    �7�`  7�` $ @M7�``q H7�`�� l7�`� 0�7�`DI � 7�`�i  7w@  �h
    2�`��	
    �
    � 
    f�	
    g��	
    �!
    '�/sys/devname.cfg
    ��c-��c
    �-��c4-��c4b-�	�c
    ��
    	
    
    �����.���	�
    �
    �
    �!
    '�/tmp/phy.cal
    �]��-�]��
    �
    ����PPPPPP P@P�PS�
    	��
    
    	�.�1
    �!
    '�/sys/macadd.bin
    ��q
    �Fe(5V �2$x�C�	
    �
    �
    ����
    �
    �-�]������-�]������
    �!
    '�/sys/sign.bin
    �4s��Fe(-�]���-�	]����
    ���.��������.
    �
    ��
    �
    l 
    �
    ��	
    �
    '�/sys/rxfltr.ini
    ������e(��e(
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A
    �
    '�/sys/rxfltr.ini
    ������e(��e(�A�A"�A�A�A�A�A�A�B�B	
    
    �!
    '�/sys/httpsrv.cfg
    �F�-�F�
    �-�F�4-�F�4�-�	F���
    ��� ���� �	
    �
    �P
    
    �!
    '�/sys/mdns.cfg
    �[\-�[\
    �-�[\4-�[\4�-�	[\�B�B��B��A�A�A�B����P�:.C
    
    �!
    '�/sys/p2p.cfg.`
    �o��Fe(
    ��
    g�	.�	
    �!
    '�/sys/date_time.cfg
    �
    >(�Fe(3a.0
    17QR==�(�
    .2�3.' �.' �....:..'..?4*, de�D*, ���D*, ,-�D.*, LD.
    ..2`aaA.r
    s6)	
    )W$e�xV.
    �\��.p
    �!
    '�/sys/stacfg.ini
    �TU-�TU
    �-�TU4-�T
    '�/sys/pref.net
    ��-��
    �-��4-��4`a	aA6x�)	x�5r(-�	��D�Xr(6x�)	x)q#�����RNS�1"D��
    E
    T��:
    ")	��
    "�!86��)	�D��
    {
    #
     
    
    **"*"
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71�l�x�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b3
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E	6x�)	x
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��71��T�D��Z`(\�B	
    v"w"��x"�
    y"
    �
    
    �"
    �"
    �"c"b�
    �!
    �!
    �!�!�W�A���
    
    '(#B72�$"΀�
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    E
    @
    @
    @D��
    

    And the customer tried to use SL_FS_FACTORY_RET_TO_IMAGE and SL_FS_FACTORY_RET_TO_DEFAULT to recover the locked modules, but the application files were erased (second bootloader still works). This seems not match our document:

    Another question is that is there a way to manually trigger the lock status? Customer wants to use it to test if the recover method works properly.

    Best regards,

    Shuyang

  • Hi,

    The specific error you are experiencing is related to bad integrity on one of the files.

    This is done during read operation of a file (not your file but a system file the system is using).

    This is the only way to get this error (which eventually get translated into what you see in application layer, i.e. -14343).

    So there is no way to reproduce the exact error since the integrity is calculated in the secured filesystem code.

    I can also see that the servicepack file for example is not on the filesystem.

    Are there steps we can follow to reproduce this scenario?

    Shlomi

  • Hi Shlomi,

    Can you please point out which file is broken? Could the second bootloader cause this file to corrupt, or it can only be accessed by the NWP?

    There is no special steps to reproduce the error, it happens just during normal operations. But the customer mentions there could be frequent resets of the device (about 50s period) during operation, could this be relavant?

    And the customer only write/read the file /sys/myapp2.bin in the second bootloader, not in the application. Below is the operation to the file in the second bootloader to update the app file:

      ret = sl_Start(0,0,0);
      ret = sl_FsGetInfo(deviceFileName, 0,&pFsFileInfo);
      ret = sl_FsDel(deviceFileName,0);
    
      OpenFlags = SL_FS_CREATE | SL_FS_OVERWRITE | SL_FS_CREATE_MAX_SIZE( MAX_SIZE_128K );
      s_u32DeviceFileHandle =  sl_FsOpen((unsigned char *)deviceFileName, OpenFlags , (unsigned long *)&g_u32MasterToken);
     i32WriteCount = sl_FsWrite(s_u32DeviceFileHandle,s_u32WriteOffset, &pdata[7],u32DataLength);
      sl_FsClose(s_u32DeviceFileHandle, NULL, NULL, 0);
      sl_Stop(0);

    And reading after every power-up:

       Status = sl_Start(0,0,0);
       iRetVal = sl_FsGetInfo(ImgName, g_u32MasterToken,&pFsFileInfo);
    
      lFileHandle = sl_FsOpen((unsigned char *)ImgName,SL_FS_READ,(_u32 *)&g_u32MasterToken);
      RetVal = sl_FsRead(lFileHandle,128, (unsigned char*)APP_IMG_SRAM_OFFSET,pFsFileInfo.Len-128);
      Status = sl_FsClose(lFileHandle, 0, 0, 0);
      
     Status = sl_Stop(0);

    Please kindly suggest if there is any risk in the code, thanks.

    Best regards,

    Shuyang

  • Hi,

    The file I referred to is the one storing wlan profiles but it can also be other files.

    These files are system files so the application does not have a direct access to these files, just indirectly via using host driver APIs.

    Anyway, as the bootloader, I am not sure what you are doing exactly so I cannot comment.

    What I did noticed in the code snippet you shared is that you are using sl_Stop(0) which means shutting down the power aggressively and since it is applied right after closing the file, it might be an issue since the NWP needs some time to calculate the file hash and store to the file system.

    What I suggest is to gracefully stop the device by adding a timeout to the sl_Stop(), for example sl_Stop(200). In this case, the NWP has 200mSec to gracefully handle the filesystem in your case but also other networking tasks.

    Regards,

    Shlomi