# ESC suudenly stopped working after updating px4 parameters

Source: https://forum.modalai.com/topic/1653/esc-suudenly-stopped-working-after-updating-px4-parameters
Category: VOXL 2 and VOXL 2 Mini (https://forum.modalai.com/category/26/voxl-2-and-voxl-2-mini)
Tags: voxl-2
Posted: 2023-01-03 12:56:44 UTC by Tamas Pal 0
Replies: 8 · Views: 1317

## Tamas Pal 0 · 2023-01-03 12:56:44 UTC

ESC suddenly stopped working after updating px4 pid parameters. I am able to detect esc using ftdi cable; I have also rechecked the voxl2 - ESC UART cable. There is no hardware issue. How to fix it ?

## Reply by Alex Kushleyev (ModalAI staff) · 2023-01-03 17:50:40 UTC

Can you please double check that uart_esc module is enabled and correct baud rate is used (250K default). Do you still have the parameters that you used when ESC was working? Maybe try those.

## Reply by Tamas Pal 0 · 2023-01-04 06:29:59 UTC (in reply to Alex Kushleyev)

@Alex-Kushleyev The esc module is enabled but 
```
qshell mixer load /dev/uart_esc quad_x.main.mix
```
The uart_esc file is missing even after conecting the esc with voxl2. There is no hardware damage. I have checked all the ports many times with multimeter inclding the voltage of RX-TX with respect to ground. All the things are good. I have tested it another voxl2, even tried it with differnt cable. The issue is still there. How to fix the issue?

## Reply by Alex Kushleyev (ModalAI staff) · 2023-01-04 20:25:13 UTC

You should try to use the following commands:
```
qshell modalai_esc status
```

also check
```
qshell param show UART_ESC*
```

## Reply by Anubhav · 2023-01-05 13:45:33 UTC

Hi @Alex-Kushleyev, 

I have tried running the above command: 
```
voxl2:~$ px4-qshell modalai_esc status
INFO  [qshell] Send cmd: 'modalai_esc status'
INFO  [qshell] qshell return value timestamp: 798550454, local time: 798557832
```
```
voxl2:/$ px4-qshell param show UART_ESC*
INFO  [qshell] Send cmd: 'param show UART_ESC*'
INFO  [qshell] qshell return value timestamp: 785736853, local time: 785740154
```
I think voxl2 is not detecting ESC, how can I resolve this?

## Reply by modaltb (ModalAI staff) · 2023-01-05 16:19:58 UTC

Hi @Tamas-Pal-0 ,

Sorry some of the stdout responses don't make it to the shell when evoked with `px4-`, can you try this section of the developer guide to run PX4 interactively through the shell?

https://docs.modalai.com/voxl-px4-developer-guide/#how-to-access-the-px4-shell-pxh

After that, and you run voxl-px4 manually, you will get a `pxh` shell, and then the `qshell modalai_esc status` command should spit out info.

Also, for the param check, no `qshell` needed, you can use `param show UART_ESC*` from the `pxh` shell.

## Reply by Alex Kushleyev (ModalAI staff) · 2023-01-06 04:09:15 UTC

@modaltb , just wanted to double check.. inside pxh shell, the command should be just ```modalai_esc status``` (without `qshell`), right?

## Reply by Anubhav · 2023-01-06 09:18:31 UTC (in reply to Alex Kushleyev)

@Alex-Kushleyev @modaltb 

Below is the output of the command ```qshell modalai_esc status``` while the ESC was connected and powered on:

```
INFO  [qshell] Send cmd: 'modalai_esc status'
INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
INFO  [muorb] SLPI: qshell gotten: modalai_esc status
INFO  [muorb] SLPI: Max update rate: 0 Hz
INFO  [muorb] SLPI: Outputs on: no
INFO  [muorb] SLPI: UART port: 2
INFO  [muorb] SLPI: UART open: yes
INFO  [muorb] SLPI: 
INFO  [muorb] SLPI: Params: UART_ESC_CONFIG: 1
INFO  [muorb] SLPI: Params: UART_ESC_BAUD: 250000
INFO  [muorb] SLPI: Params: UART_ESC_MOTOR1: 3
INFO  [muorb] SLPI: Params: UART_ESC_MOTOR2: 2
INFO  [muorb] SLPI: Params: UART_ESC_MOTOR3: 4
INFO  [muorb] SLPI: Params: UART_ESC_MOTOR4: 1
INFO  [muorb] SLPI: Params: UART_ESC_RPM_MIN: 1000
INFO  [muorb] SLPI: Params: UART_ESC_RPM_MAX: 10500
INFO  [muorb] SLPI: 
INFO  [muorb] SLPI: -- ID: 0
INFO  [muorb] SLPI:    State:           0
INFO  [muorb] SLPI:    Requested:       0 RPM
INFO  [muorb] SLPI:    Measured:        0 RPM
INFO  [muorb] SLPI:    Command Counter: 0
INFO  [muorb] SLPI:    Voltage:         0.000000 VDC
INFO  [muorb] SLPI: 
INFO  [muorb] SLPI: -- ID: 1
INFO  [muorb] SLPI:    State:           0
INFO  [muorb] SLPI:    Requested:       0 RPM
INFO  [muorb] SLPI:    Measured:        0 RPM
INFO  [muorb] SLPI:    Command Counter: 0
INFO  [muorb] SLPI:    Voltage:         0.000000 VDC
INFO  [muorb] SLPI: 
INFO  [muorb] SLPI: -- ID: 2
INFO  [muorb] SLPI:    State:           0
INFO  [muorb] SLPI:    Requested:       0 RPM
INFO  [muorb] SLPI:    Measured:        0 RPM
INFO  [muorb] SLPI:    Command Counter: 0
INFO  [muorb] SLPI:    Voltage:         0.000000 VDC
INFO  [muorb] SLPI: 
INFO  [muorb] SLPI: -- ID: 3
INFO  [muorb] SLPI:    State:           0
INFO  [muorb] SLPI:    Requested:       0 RPM
INFO  [muorb] SLPI:    Measured:        0 RPM
INFO  [muorb] SLPI:    Command Counter: 0
INFO  [muorb] SLPI:    Voltage:         0.000000 VDC
INFO  [muorb] SLPI: 
INFO  [muorb] SLPI: modalai_esc: cycle: 85537 events, 9228157us elapsed, 107.88us avg, min 4us max 440us 9.18
INFO  [muorb] SLPI: modalai_esc: output update interval: 85534 events, 2056.72us avg, min 1249us max 3206224u
INFO  [muorb] SLPI: control latency: 85533 events, 49030648us elapsed, 573.24us avg, min 372us max 925us 62.2
INFO  [muorb] SLPI: Switched to rate_ctrl work queue: 1
INFO  [muorb] SLPI: Mixer loaded: yes
INFO  [muorb] SLPI: Driver instance: 0
INFO  [muorb] SLPI: Channel Configuration:
INFO  [muorb] SLPI: Channel 0: value: 0, failsafe: 0, disarmed: 0, min: 1000, max: 10500
INFO  [muorb] SLPI: Channel 1: value: 0, failsafe: 0, disarmed: 0, min: 1000, max: 10500
INFO  [muorb] SLPI: Channel 2: value: 0, failsafe: 0, disarmed: 0, min: 1000, max: 10500
INFO  [muorb] SLPI: Channel 3: value: 0, failsafe: 0, disarmed: 0, min: 1000, max: 10500
INFO  [muorb] SLPI: Ok executing command: modalai_esc status
INFO  [muorb] SLPI: Sending qshell retval with timestamp 949539937, current timestamp 949539938
INFO  [qshell] qshell return value timestamp: 949539937, local time: 949553192

```

## Reply by Alex Kushleyev (ModalAI staff) · 2023-01-06 14:59:12 UTC

It seems no data has been received by modal_esc module, but it also seems that the ESCs have not been armed yet. Let's try to query the individual ESC version information:

```
modalai_esc -i 0 version
```

and
```
modalai_esc -i 0 version-ext
```

(you can replace `-i 0` with ESC ID 0..3)

These commands will explicitly send a request to each ESC and get information about its version and should print. `version-ext` is the extended version information, but basic `version` command should be sufficient for checking communication.
