cancel
Showing results for 
Search instead for 
Did you mean: 

How ESP32 WROOM 32 interface with STM32F413 ?

SGhug
Associate II

Hello ST Team,

I'm doing interface between STM32F413 & ESP32 WROOM 32, but not getting how many pins of ESP32 WROOM 32 are going to use for interface with STM32F413.

I'll going to do UART communication.

How many program pins , data pins & control pins of ESP32 WRROM 32 are required while using ESP32 WRROM 32 as a WiFi or BLE module ??

What other settings to do while writing firmware for the same ?

Let me know as early as possible.

Thank you.

6 REPLIES 6
FM_360
Associate II

Hi,

You can use uart driver from esp-idf SDK to handle uart at ESP32 side.

Find more here...

https://docs.espressif.com/projects/esp-idf/en/latest/api-reference/peripherals/uart.html

One Application example also provided into esp idf (read above link carefully).

SGhug
Associate II

Hello,

Thanks to immediate response.

I'll go through the link you provided.

For PCB hardware side, Is MTDO, MTMS, MTDI, MTCK pins of esp32 wroom 32 connect to STM32F413 for programming to ESP32?

FM_360
Associate II

Use RXD0, TXD0, IO0(BOOT to GND) and RESET(IO21) to programm the ESP Wroom module

SGhug
Associate II

OK, get it.

When I'm using WiFi & BLE both at same time so, Is it possible to use with single UART of ESP32 ?

Is any hardware changes to resolve this problem or need to make changes in software?

Ategg.1
Associate II

GPIO 16-RX1 and GPIO 17-TX1 pwr-3.3v GND are used for AT-commands

Ategg.1
Associate II

i got how to interface ESP32 interfaced with stm32g4 using uart for ATcommands... bassically i wanted to send AT-commands to my ESp32 wroom from stm32g431RB but i could not read the return value after spending nearly 3 days i found out 3 things

1)....the esp32 which i was using was not working properly

2).....my stm32 was not powering my esp32 properly so i used usb cable to power my esp32 wroom...

3).....when recieving the OK response from the ESP32 i was geeting what i sent so i increased the no. of bytes to be received more that 10 which gave me OK along with other values also...

i used UART1 of esp32 wroom as it is for At-commands gpio16-rx1 gpio17-tx1 use usb to power the ESP32

and comman ground ....also use usb-uart converter to see the response.. the basic example code is below .....baud rate 115200,parity-none,databits 8,stop bit-1 flow control set to 0. on both side ESP32 and STM32(the word side is 8).

main()

{

init.....

.

.

HAL_UART_Transmit(&huart4,(uint8_t*)"AT+RST\r\n",8,100); // for veiwing usb-uart

HAL_UART_Transmit(&huart1,(uint8_t*)"AT+RST\r\n",8,100); // ESP32

 while (1)

 {

HAL_UART_Receive_IT(&huart1,(uint8_t*)ret,13); // waiting for resonse

if(HAL_UART_Receive_IT(&huart1,(uint8_t*)ret,13)==HAL_OK) //after the response is complete

{

HAL_UART_Transmit(&huart4,(uint8_t*)ret,13,100); // for veiwing usb-uart

}

 }