SPI error with navio2

Hi there!

I am using a raspberry pi 4 and a navio2 shield and want to run px4 on it.

I just performed a clean install and closely followed these instructions:
https://docs.emlid.com/navio2/common/ardupilot/configuring-raspberry-pi/
https://dev.px4.io/master/en/setup/dev_env_linux_ubuntu.html
https://dev.px4.io/master/en/setup/building_px4.html

the compilation went fine, but when starting px4 with “sudo ./bin/px4 -s px4.config” i get the following output:

pi@navioglider:~/px4 $ sudo ./bin/px4 -s px4.config
INFO  [px4] assuming working directory is rootfs, no symlinks needed.

______  __   __    ___ 
| ___ \ \ \ / /   /   |
| |_/ /  \ V /   / /| |
|  __/   /   \  / /_| |
| |     / /^\ \ \___  |
\_|     \/   \/     |_/

px4 starting.

INFO  [px4] Calling startup script: /bin/sh px4.config 0
INFO  [dataman] Unknown restart, data manager file './dataman' size is 11798680 bytes
ERROR [drivers__device] could not open /dev/spidev0.36
WARN  [mpu9250] no device on bus 3
ERROR [drivers__device] could not open /dev/spidev0.68
ERROR [lsm9ds1] SPI::init failed
ERROR [lsm9ds1] driver init failed
ERROR [drivers__device] could not open /dev/spidev0.69
ERROR [lsm9ds1_mag] SPI::init failed
ERROR [lsm9ds1_mag] driver init failed
MS5611_I2C on I2C bus 1 at 0x77
INFO  [commander] LED: open /dev/led0 failed (22)
INFO  [mavlink] mode: Normal, data rate: 1000000 B/s on udp port 14556 remote port 14550
INFO  [linux_pwm_out] Loaded mixer from file ROMFS/px4fmu_common/mixers/quad_x.main.mix
INFO  [linux_pwm_out] Starting PWM output in Navio mode
INFO  [logger] logger started (mode=all)
INFO  [px4] Startup script returned successfully

my rpi only has spidev0.0, spidev0.1, spidev0.2 and spidev0.3, so it’s understandable that px4 cant open spidev0.36

but why is it trying? how can it be fixed?

Hi
There’s some refactoring going on on master at the moment in that area, and you happened to pick master right at an unfortunate moment. Can you test this PR: https://github.com/PX4/Firmware/pull/14438?

I tested that PR -> no more SPI errors and everything appears to be working correctly on first glance!

Can you tell me how i will know when this refactoring will be completed and the master branch safe to use again?

Thanks for testing.

I expect it to be merged within the next week. You can also subscribe to it on github to know exactly when that happens.
Generally we want to keep master always in a working state, this is an exception.

1 Like