ESP32 S3 isn’t detecting RC receiver

Hi

i have a problem with my Esp32 S3 using Mission Planner.

The connection is ok with Mission Planner but i cannot use receiver Flysky IA6B with Sbus protocol.

In my firmware i have put:

#-----RCIN-----
define HAL_ESP32_RMT_RX_PIN_NUMBER GPIO_NUM_14
define HAL_ESP32_RCIN GPIO_NUM_14
define AP_RCPROTOCOL_ENABLED 0

if i change in the firmware …define AP_RCPROTOCOL_ENABLED 1…but not connect to Mission Planner.

Only i can changed in Mission Planner.. putting:

but not work the receiver…and i cannot calibrate my radio Flysky I6.

how i can solve ?

thanks much

in Default.param i have put:

SCHED_LOOP_RATE 50
SIM_RATE_HZ 100
AP_RCPROTOCOL_ENABLED 1

RC_Protocol = 1 is not SBUS but PPM
RC_Protocol = 0 is “All” Protocolls
Check if RC_Protocol = 3 (SBUS) is working

1 Like

hi.

i have tried many protocols (SBUS, PPM and IBBUS) setting also on the radio, but not work.

This my layout of wirings:

can be that there are my mistakes on this ?

thanks much to all.

wiring looks correct.

Did you do as suggested by @Juergen-Fahlbusch, and if it doesnt work, use the same settings described by @Juergen-Fahlbusch along with

define AP_RCPROTOCOL_ENABLED 1 // currently it is at 0

I checked the esp32buzz hwdef and it doesn’t seem to be having anything like this in its hwdef, so maybe just remove this line altogether (not sure about these hwdef.dat changes)

Hi Ste, do you have a possibilty to check the signal from receiver to ESP.
As you said with ESP Node MCU it worked fine. Was it the same receiver with the same settings?
And again RC-Protocol = bit 1 is PWM.

Hi Juergen..

mmm.no. i dont have posibility to check.

but i have your same dubt about signal from receiver to ESP.

with ESP32nodeMcu was same settings…SBUS receiver and connection in GPIO 4. The radio Flysky set SBUS.

I dont remember RC_Protocol value…becouse i dont change it…then i have used the default value.

But Jurgen…my question now is this:

can be that i must used resistors between signal from receiver to ESP ??

for me can be this the problem…

thanks for help

hi @Juergen-Fahlbusch i have checked with multimeter and signal from receiver arrive 3.27 volt to Esp32-S3.

Hi Ste,
is the signal a steady / stabil 3,27V? A multimeter is not the best for a pulsed signal.
I checked again my setup.
I don’t have used ‘define AP_RCPROTOCOL_ENABLED’ at all. Also I checked the source code. So ‘AP_RCPROTOCOL_ENABLED’ is not the same as the Parameter ‘RC_PROTOCOL’ of the mission planer parameter list. So the source code is only checking if ‘AP_RCPROTOCOL_ENABLED’ is defined or not.
My system is set to
RC_OPTIONS = 32 (bit 5 set meaning ‘Arming check throttle for 0 input’)
RC_PROTOCOL = 1 (bit 0 set meaning ‘all protocols’)
I am using a true FUTABA SBUS receiver and mission planer messages shows Receiver SBUS pulses active

Hi @Juergen-Fahlbusch.

thanks for answer.

Now i understand that AP_RCPROTOCOL_ENABLED is not the same at parameter RC_PROTOCOL.

Then my problem can be that AP_RCPROTOCOL_ENABLED is set to 0.

But another problem is that if i i put AP_RCPROTOCOL_ENABLED to 1 the board not connect in Mission Planner.

Try to comment this line AP_RCPROTOCOL_ENABLED completly out in the HWDEF.

hi @Juergen-Fahlbusch

i have tried to comment but now not work gyro/acc MPU6500.

And connect to Mission Planner only with TCP and not using COM47:

this is the code:

define HAL_ESP32_BOARD_NAME “esp32s3test”

#-----SPI-----

no SPI

Host DMA Channel MOSI MISO SCLK

#ESP32_SPIBUS SPI3_HOST SPI_DMA_CH_AUTO GPIO_NUM_ GPIO_NUM_ GPIO_NUM_

#-----I2C-----

Port SDA SCL SPEED INTERNAL SOFT

ESP32_I2CBUS I2C_NUM_0 GPIO_NUM_16 GPIO_NUM_15 400*KHZ true false

#-----UARTS-----

port RX TX

ESP32_SERIAL UART_NUM_0 GPIO_NUM_44 GPIO_NUM_43
ESP32_SERIAL UART_NUM_1 GPIO_NUM_18 GPIO_NUM_17
ESP32_SERIAL UART_NUM_2 GPIO_NUM_12 GPIO_NUM_11

#— SPI Devices —

no SPI devices

Name Bus Device ChipSel Mode LoSpeed HiSpeed

#-----RCOUT-----
ESP32_RCOUT GPIO_NUM_4
ESP32_RCOUT GPIO_NUM_5
ESP32_RCOUT GPIO_NUM_6
ESP32_RCOUT GPIO_NUM_7
ESP32_RCOUT GPIO_NUM_8
ESP32_RCOUT GPIO_NUM_9

#-----RCIN-----
define HAL_ESP32_RMT_RX_PIN_NUMBER GPIO_NUM_14
define HAL_ESP32_RCIN GPIO_NUM_14
#define AP_RCPROTOCOL_ENABLED 1

#-----ADC-----

no ADC

#-----SENSORS-----

#-----INS/IMU-----
#define HAL_INS_DEFAULT HAL_INS_NONE
define HAL_INS_MPU6500_NAME “mpu6500”
define HAL_INS_DEFAULT HAL_INS_MPU6500_I2C
define HAL_INS_MPU6500_I2C_BUS 0
define HAL_INS_MPU6500_I2C_ADDR (0x68)
IMU Invensense I2C:0:0x68 ROTATION_YAW_270
define INS_MAX_INSTANCES 3 # only here for binary identicality

#-----COMPASS-----

no compass

define AP_COMPASS_ENABLE_DEFAULT 0
define ALLOW_ARM_NO_COMPASS

#-----BARO-----

no baro

allow boot without a baro

define HAL_BARO_ALLOW_INIT_NO_BARO 1

#----- AIRSPEED-----

no airspeed

define AP_AIRSPEED_ENABLED 0

#-----WIFI-----

2 use udp, 1 use tcp… for udp,client needs to connect as UDPCL in missionplanner etc to 192.168.4.1 port 14550

define HAL_ESP32_WIFI 1
define WIFI_SSID “ardupilot123”
define WIFI_PWD “ardupilot123”

#-----SDCARD
define HAL_LOGGING_FILESYSTEM_ENABLED 0
define HAL_LOGGING_DATAFLASH_ENABLED 0
define HAL_LOGGING_MAVLINK_ENABLED 0

define HAL_LOGGING_BACKENDS_DEFAULT 0

define AP_FILESYSTEM_ESP32_ENABLED 0
define AP_SCRIPTING_ENABLED 0
#define HAL_USE_EMPTY_STORAGE 1

in Default Parameter i have put:

SCHED_LOOP_RATE 50 # flash won’t go faster :frowning:
SIM_RATE_HZ 100

Hi Ste, this is a little worse as this ‘define AP_RCPROTOCOL_ENABLED’ has nothing to do with the MPU and the USB connection.
But, what happens if you disconnect physically the receiver from the ESP32?
Is than MPU and USB connection to Mission Planner again working?
Are you able t connect a normal terminal program via USB to the FC instead of Mission Planner and monitor messages comming after you reset the ESP32?

Hi Juergen. Goodday!

after i try…

you can tell me a name of terminal program ?

i try also to do this test of terminal..

thanks

I am using Terraterm Tera Term Open Source Project
But if you have the arduino IDE installed you also can use the embedded serial monitor

1 Like

i removed define AP_RCPROTOCOL_ENABLED 0 and after reinstall firmware, connect battery and connect to Mission planner using only wifi, but gyro/acell MPU6500 not work.

Also if i change parameter give me error and not save the parameter.

Did you checked with complete disconnected Flysky IA6B as I recommended before?

yes i disconnected the receiver, connect only with wifi and always MPU6500 not work.

The connection with COM: port not work fine.

Is more easy connect with Wifi.

So than next step, connect ESP to a terminal programm as said. Datarate 115200 8n1.
Monitor, log and show the first 20-30 sec after ESP32 Reset

1 Like