Skip to main content
Visitor II
November 19, 2019
Solved

Soft AP does not work with the Cube example for B-L475E-IOT01A with ISM43362

  • November 19, 2019
  • 5 replies
  • 3162 views

There seems to be a bug when activating a Soft Access Point for the B-L475E-IOT01A MB1297D.

The problem is either in the Wi-Fi module's firmware or in the es_wifi drivers in STM32Cube_FW_L4_V1.11.0 and STM32CubeExpansion_Cloud_AWS_V1.2.1.

The es_wifi drivers expects a "[AP   ]" reply from the module when the 'A0' command is sent. No reply is received and the ES_WIFI_ActivateAP will time out. Even though the module does not reply, the Soft AP starts correctly and the web server is able to configure a network.

Only after a network is configured, the module will reply with the "[AP   ]" message. Full output example:

> [AP   ] SSID: Soft AP network MAC: XX:XX:XX:XX:XX:XX ,11,192.168.10.1

[WEB SVR] Server started

>

[SOMA][AP DHCP] Assigned XX:XX:XX:XX:XX:XX has 192.168.10.100[EOMA]

[JOIN  ] Actual Wifi network,192.168.2.157,0,0

OK

STM32L4 Discovery kit IoT node (B-L475E-IOT01A MB1297D) with ISM43362.

Tested with these firmware versions:

ISM43362-M3G-L44-SPI-C3.5.2.5.STM

ISM43362-M3G-L44-SPI C3.5.2.3.BETA9

Is this a known bug? Does the Soft AP es_wifi code work with different ISM43362 firmware?

    This topic has been closed for replies.
    Best answer by jonarnp

    Answering my own question here.

    The bug is in the ISM43362-M3G-L44 SPI firmware confirmed by Inventek Systems:

    "[...]

    We have looked into this further and now agree that with the SPI interface there is no response back from the module after the A0 command.

    When our UART firmware is used the responses are received when using the A0 command but not with the SPI version of the firmware.

    You could use the AD command since this is not a blocking command and a response is received. It can also be used for configuration but there is no web page started.

    [...]"

    I do not think you can use the AD command for the same purpose as the A0, so it seems the UART firmware is the way to go. I have not tested it yet.

    5 replies

    jonarnpAuthorAnswer
    Visitor II
    December 6, 2019

    Answering my own question here.

    The bug is in the ISM43362-M3G-L44 SPI firmware confirmed by Inventek Systems:

    "[...]

    We have looked into this further and now agree that with the SPI interface there is no response back from the module after the A0 command.

    When our UART firmware is used the responses are received when using the A0 command but not with the SPI version of the firmware.

    You could use the AD command since this is not a blocking command and a response is received. It can also be used for configuration but there is no web page started.

    [...]"

    I do not think you can use the AD command for the same purpose as the A0, so it seems the UART firmware is the way to go. I have not tested it yet.

    Visitor II
    March 3, 2020

    And how can I change from SPI to UART?

    jonarnpAuthor
    Visitor II
    March 4, 2020

    I am not sure. I change my board, so stopped working on the L475E. If you are using B-L475E-IOT01A, I would assume you would need update the ISM43362 firmware and change the L475E code to use UART instead.

    However, Inventek support described how to use the AD command with SPI firmware. I will paste the description below. If you test it, it would be helpful for others if you post your results, and I will update my answer.

    "[...]

    However, we do have customers using the AD command alternative for WiFi provisioning / configuration.

    Following is a description of the process using the AD command.

    [...]

    Using the AD Command for WiFi credential provisioning:

    Start SoftAP in direct mode ‘AD’ command

    Start TCP Server P0, P1, P2, P5==11

    Connect Smartphone to SoftAP (MR Command is used to read Asynchronous data)

    Smartphone App makes TCP connection to module (MR Command is used to read Asynchronous data)

    Sends ssid, password, security information

    Shutdown TCP server, ‘P5=0’

    Shutdown SoftAP, ‘AE’

    ‘C0’ command to join network

    Example:

    > AD

    [AP   ] SSID: eS-WiFi_AP_C47F5102B74F,1,192.168.10.1

    [WEB SVR] CSO Server started

    [JOIN  ] !DIRECTCONNECT,192.168.10.1

    OK

    > P0=0

    OK

    > P1=0

    OK

    > P2=8002

    OK

    > P?

    0,0.0.0.0,8002,0.0.0.0,0,0,0,1,0,0,0,7200000

    OK

    > P5=11

    [TCP TSK] Multi-Accept Setup

    [TCP SVR] Waiting on connection ...

    OK

    > MR

    [SOMA][AP DHCP] Assigned AC:FD:CE:90:C6:49 has 0.0.0.0[EOMA]

    [SOMA][AP DHCP] Assigned AC:FD:CE:90:C6:49 has 192.168.10.100[EOMA]

    OK

    > MR

    [SOMA][TCP SVR] Accepted 192.168.10.100:1686[EOMA]

    OK

    > R0

    ssid,password,4

    OK

    > C1=ssid

    OK

    > C2=password

    OK

    > C3=4

    OK

    > C?

    ssid,password,4,1,0,192.168.10.1,255.255.255.0,192.168.10.1,255.255.255.255,255.255.255.255,3,0,0,US,1

    OK

    > P5=0

    [TCP TSK] Killed

    OK

    > AE

    OK

    > C0

    [JOIN  ] ssid,10.1.10.50,0,0

    OK

    [...]"

    Visitor II
    September 7, 2020

    Hello my friend

    When I connect the development board stm32h7b3i-dk to the pc through the usb to tera to use the wifi module (ISM43340-M4G-L44-10 CF), what baud rates are I have to put or what is the configuration, nothing appears in the serial communication?

    Do you know how to use the wifi module (ISM43340-M4G-L44-10 CF) of the stm32h7b3i-dk board?

    Any example of a WIFI http server with stm32h7b3i-dk ???

    Visitor II
    September 13, 2020

    I manage to solve the problem of the AT command: A0

    As we tested it with uart communication, since according to me, the ISM43340-M4G-L44-10 CF wifi module embedded with the board can only be used with spi, since to test uart you have to have the module working separately, not with the board stm32?

    Visitor II
    September 18, 2020

    Hello my friend

    To communicate with the wifi module, use the SPI2 of the board but no more, the board does not give me any answer. Any idea how to implement an example ???

    How to send the AT commanders in the SPI communication through the following lines:

    HAL_SPI_TransmitReceive_IT (SPI_HandleTypeDef * hspi, uint8_t * pTxData, uint8_t * pRxData, uint16_t Size)

    HAL_StatusTypeDef HAL_SPI_Transmit_IT (SPI_HandleTypeDef * hspi, uint8_t * pData, uint16_t Size)

    Visitor II
    September 18, 2020

    Hello my friend

    To communicate with the wifi module, use the SPI2 of the board but no more, the board does not give me any answer. Any idea how to implement an example ???

    How to send the AT commanders in the SPI communication through the following lines:

    HAL_SPI_TransmitReceive_IT (SPI_HandleTypeDef * hspi, uint8_t * pTxData, uint8_t * pRxData, uint16_t Size)

    HAL_StatusTypeDef HAL_SPI_Transmit_IT (SPI_HandleTypeDef * hspi, uint8_t * pData, uint16_t Size)