# px4io failed to start

Source: https://forum.modalai.com/topic/1741/px4io-failed-to-start
Category: VOXL 2 and VOXL 2 Mini (https://forum.modalai.com/category/26/voxl-2-and-voxl-2-mini)
Tags: voxl-2-io
Posted: 2023-01-25 12:27:26 UTC by andrespalomino
Replies: 5 · Views: 1604

## andrespalomino · 2023-01-25 12:27:26 UTC

Hi, 
I am using a Voxl 2 IO Board to get a FrSky transmiter SBUS signal but the px4io can not start when the IO board is connected to Voxl2. When running the px4io status in shell like here [How to Access the PX4 Shell](https://docs.modalai.com/voxl-px4-developer-guide/#how-to-access-the-px4-shell-pxh). I get 
```
pxh> qshell px4io status
INFO  [qshell] Send cmd: 'px4io status'
INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
INFO  [muorb] SLPI: qshell gotten: px4io status
ERROR [muorb] SLPI: Command px4io not found
ERROR [muorb] SLPI: Failed to execute command: px4io status
INFO  [muorb] SLPI: Sending qshell retval with timestamp 191821788, current timestamp 191821790
INFO  [qshell] cmd returned with: 1
INFO  [qshell] qshell return value timestamp: 191821788, local time: 191824369
ERROR [qshell] Command failed
Command 'qshell' failed, returned -1.
```
Then I used the command without *qshell* but it still can't start  

```
pxh> px4io status
ERROR [px4io] not started
ERROR [px4] px4_task_exit: self task not found!
```
I attempted to command *start* but it appears to not have the serial port enabled

```
pxh> px4io start
INFO [arch_px4io_serial] Open failed in init
ERROR [px4io] interface init failed
ERROR [px4] px4_task_exit: self task not found!
```
The status of the Voxl IO board is [Running in waiting mode](https://docs.modalai.com/voxl2-io-user-guide/#application-running-in-waiting-mode)

**Note:** I tested the same VoxI IO board in a separated Voxl2 Flight Deck and seems to be working as I get RC commands in *px4-listener input_rc* and the status is [Running in standar mode](https://docs.modalai.com/voxl2-io-user-guide/#application-running-in-standard-mode)

Am I missing something?

Thanks

## Reply by Eric Katzfey (ModalAI staff) · 2023-01-25 16:00:09 UTC

@andrespalomino Which port have you connected the px4io board to? The startup file /etc/modalai/voxl-px4.config shows the default way to use px4io. In there you can see that the first thing is to detect the board. What happens if you run ```qshell px4io detect```?

## Reply by andrespalomino · 2023-01-25 17:03:57 UTC

Hi Eric,

The IO board is connected to J19 as shown here [Host Connection](https://docs.modalai.com/voxl2-io-user-guide/#voxl-2-as-host-m0054)

Then the *px4io detect* also shows open failed (notice below I'm running it without *qshell*)

```
pxh> qshell px4io detect
INFO  [qshell] Send cmd: 'px4io detect'
INFO  [muorb] SLPI: Marking DeviceNode(qshell_req) as advertised in process_remote_topic
INFO  [muorb] SLPI: qshell gotten: px4io detect
ERROR [muorb] SLPI: Command px4io not found
ERROR [muorb] SLPI: Failed to execute command: px4io detect
INFO  [muorb] SLPI: Sending qshell retval with timestamp 87951625, current timestamp 87951627
INFO  [qshell] cmd returned with: 1
INFO  [qshell] qshell return value timestamp: 87951625, local time: 87956506
ERROR [qshell] Command failed
Command 'qshell' failed, returned -1.
pxh> px4io detect
ERROR [arch_px4io_serial] Open failed in init
ERROR [px4io] interface init failed
ERROR [px4] px4_task_exit: self task not found!

```

Thanks

## Reply by andrespalomino · 2023-01-26 14:40:05 UTC (in reply to Eric Katzfey)

Hi @Eric-Katzfey 

I was looking at how px4 service is initialized [voxl-px4.service](https://beta-docs.modalai.com/voxl-px4-developer-guide/#theory-of-operation) and I don't have a config file `/etc/modalai/voxl-px4.config`. Instead the voxl-px4 bash script points to `/etc/modalai/voxl.config` and that config file has the *px4io detect* or *start* under "M0052" platform 

Then I found the system image in this Voxl2 is `1.2.1-M0054-14.1a-perf`
This is how we received it at the end of November, would this be the issue? 

Below the section of the voxl.config file
```

# On M0052 the GPS and RC drivers run on the apps processor
if [ $PLATFORM = "M0052" ]; then
    # Pixhawk 4 GPS module
    gps start -d /dev/ttyHS2

    # RC input may be coming via either an external M0065 (aka px4io) module
    # or a directly attached Spektrum receiver. First see if the M0065 is detected.
    # This is only applicable for M0052. M0065 is not yet supported on M0054.
    px4io detect
    PX4IO_STATUS=$?
    /bin/echo "PX4IO detect returned value $PX4IO_STATUS"
    if [ $PX4IO_STATUS -eq 0 ]; then
      /bin/echo "Found M0065, starting px4io"
      px4io start
    else
      /bin/echo "M0065 not detected, starting Spektrum RC driver"
      spektrum_rc start -d /dev/ttyHS1
    fi
# On M0054 the GPS and RC drivers run on SLPI DSP
else
    # Pixhawk 4 GPS module
    # Only the newer Holybro unit is supported on M0054
    qshell gps start -d 7 -b 115200

    # Spektrum RC receiver
    qshell spektrum_rc start -d 8
fi

```

## Reply by Eric Katzfey (ModalAI staff) · 2023-01-26 15:06:45 UTC (in reply to andrespalomino)

@andrespalomino I would definitely recommend moving to the latest platform release 0.9

## Reply by andrespalomino · 2023-01-26 16:45:19 UTC (in reply to Eric Katzfey)

@Eric-Katzfey I updated to release 0.9 and that solved the topic. 
Thanks!
