BlueOS 1.4.2 cannot detect the flightcontroller (PX4)

Hello,
BlueOS seems to not recognize the flight controller (board)

  • BlueOS Version:
    Screenshot 2025-11-17 113455

  • Flight Controller: pixhawkPX4

  • Raspberry Pi 3 Model B V1.2 and i tried even the Raspberry Pi 4 Model B

  • SD card of Raspberry: Sandisk Extreme 128GB A2

This is part of the logfile of ardupilot_manager:

2025-11-17 08:44:08.453 | INFO     | __main__:<module>:18 - Starting AutoPilot Manager.
2025-11-17 08:44:08.458 | DEBUG    | mavlink_proxy.AbstractRouter:available_interfaces:67 - Possible interfaces: ['MAVLinkRouter', 'MAVLink-Server', 'MAVP2P', 'MAVProxy']
2025-11-17 08:44:08.494 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVLinkRouter
    binary_name: mavlink-routerd
    is_ok: True

2025-11-17 08:44:08.729 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVLink-Server
    binary_name: mavlink-server
    is_ok: True

2025-11-17 08:44:08.951 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVP2P
    binary_name: mavp2p
    is_ok: True

2025-11-17 08:44:08.963 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVProxy
    binary_name: mavproxy.py
    is_ok: False

2025-11-17 08:44:08.964 | DEBUG    | mavlink_proxy.AbstractRouter:available_interfaces:76 - Available interfaces: [<class 'mavlink_proxy.MAVLinkRouter.MAVLinkRouter'>, <class 'mavlink_proxy.MAVLinkServer.MAVLinkServer'>, <class 'mavlink_proxy.MAVP2P.MAVP2P'>]
2025-11-17 08:44:08.972 | INFO     | autopilot_manager:__init__:51 - Loaded settings from /root/.config/ardupilot-manager/settings.json.
2025-11-17 08:44:08.974 | DEBUG    | autopilot_manager:__init__:52 - {'preferred_router': 'MAVLinkRouter', 'sitl_frame': 'vectored'}
2025-11-17 08:44:09.662 | INFO     | __main__:<module>:32 - Releasing the AutoPilot Manager service.
2025-11-17 08:44:09.664 | DEBUG    | logging:callHandlers:1706 - Using selector: EpollSelector
2025-11-17 08:44:09.665 | DEBUG    | mavlink_proxy.AbstractRouter:exit:130 - Tried to stop MAVLinkRouter, but it was already not running.
2025-11-17 08:44:09.666 | DEBUG    | mavlink_proxy.AbstractRouter:available_interfaces:67 - Possible interfaces: ['MAVLinkRouter', 'MAVLink-Server', 'MAVP2P', 'MAVProxy']
2025-11-17 08:44:09.673 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVLinkRouter
    binary_name: mavlink-routerd
    is_ok: True

2025-11-17 08:44:09.693 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVLink-Server
    binary_name: mavlink-server
    is_ok: True

2025-11-17 08:44:09.711 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVP2P
    binary_name: mavp2p
    is_ok: True

2025-11-17 08:44:09.722 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVProxy
    binary_name: mavproxy.py
    is_ok: False

2025-11-17 08:44:09.724 | DEBUG    | mavlink_proxy.AbstractRouter:available_interfaces:76 - Available interfaces: [<class 'mavlink_proxy.MAVLinkRouter.MAVLinkRouter'>, <class 'mavlink_proxy.MAVLinkServer.MAVLinkServer'>, <class 'mavlink_proxy.MAVP2P.MAVP2P'>]
2025-11-17 08:44:09.730 | DEBUG    | mavlink_proxy.AbstractRouter:available_interfaces:67 - Possible interfaces: ['MAVLinkRouter', 'MAVLink-Server', 'MAVP2P', 'MAVProxy']
2025-11-17 08:44:09.737 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVLinkRouter
    binary_name: mavlink-routerd
    is_ok: True

2025-11-17 08:44:09.751 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVLink-Server
    binary_name: mavlink-server
    is_ok: True

2025-11-17 08:44:09.768 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVP2P
    binary_name: mavp2p
    is_ok: True

2025-11-17 08:44:09.777 | DEBUG    | mavlink_proxy.AbstractRouter:caller:72 - 
ABCMeta:
    name: MAVProxy
    binary_name: mavproxy.py
    is_ok: False

2025-11-17 08:44:09.779 | DEBUG    | mavlink_proxy.AbstractRouter:available_interfaces:76 - Available interfaces: [<class 'mavlink_proxy.MAVLinkRouter.MAVLinkRouter'>, <class 'mavlink_proxy.MAVLinkServer.MAVLinkServer'>, <class 'mavlink_proxy.MAVP2P.MAVP2P'>]
2025-11-17 08:44:09.793 | WARNING  | autopilot_manager:remove_old_logs:174 - Failed to remove logs: [Errno 2] No such file or directory: '/root/.config/ardupilot-manager/firmware/logs'
2025-11-17 08:44:09.793 | INFO     | autopilot_manager:current_sitl_frame:220 - Setting vectored as frame for SITL.
2025-11-17 08:44:09.794 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Navigator
2025-11-17 08:44:09.795 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi5
2025-11-17 08:44:09.796 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi4
2025-11-17 08:44:09.798 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Argonot
2025-11-17 08:44:09.900 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Navigator
2025-11-17 08:44:09.901 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi5
2025-11-17 08:44:09.902 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi4
2025-11-17 08:44:09.903 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Argonot
2025-11-17 08:44:10.005 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Navigator
2025-11-17 08:44:10.006 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi5
2025-11-17 08:44:10.007 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi4
2025-11-17 08:44:10.008 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Argonot
2025-11-17 08:44:10.110 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Navigator
2025-11-17 08:44:10.111 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi5
2025-11-17 08:44:10.112 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi4
2025-11-17 08:44:10.113 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Argonot
2025-11-17 08:44:10.215 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Navigator
2025-11-17 08:44:10.216 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi5
2025-11-17 08:44:10.217 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: NavigatorPi4
2025-11-17 08:44:10.219 | INFO     | flight_controller_detector.linux.detector:detect_boards:22 - Detecting Linux board: Argonot
2025-11-17 08:44:10.330 | WARNING  | autopilot_manager:get_board_to_be_used:484 - Preferred board not set yet.
2025-11-17 08:44:10.331 | ERROR    | __main__:<module>:43 - Only available board is SITL, and it wasn't explicitly chosen.
Traceback (most recent call last):

> File "/home/pi/services/ardupilot_manager/main.py", line 41, in <module>
    loop.run_until_complete(autopilot.start_ardupilot())
    │    │                  │         └ <function AutoPilotManager.start_ardupilot at 0xb55dbc58>
    │    │                  └ <autopilot_manager.AutoPilotManager object at 0xb55ac170>
    │    └ <function BaseEventLoop.run_until_complete at 0xb62a5078>
    └ <_UnixSelectorEventLoop running=False closed=False debug=False>

  File "/usr/local/lib/python3.11/asyncio/base_events.py", line 653, in run_until_complete
    return future.result()
           │      └ <method 'result' of '_asyncio.Task' objects>
           └ <Task finished name='Task-1' coro=<AutoPilotManager.start_ardupilot() done, defined at /home/pi/services/ardupilot_manager/au...

  File "/home/pi/services/ardupilot_manager/autopilot_manager.py", line 577, in start_ardupilot
    flight_controller = self.get_board_to_be_used(available_boards)
                        │    │                    └ [FlightController(name='SITL', manufacturer='ArduPilot Team', platform=<Platform.SITL: 'SITL_arm_linux_gnueabihf'>, path=None...
                        │    └ <function AutoPilotManager.get_board_to_be_used at 0xb55dbac8>
                        └ <autopilot_manager.AutoPilotManager object at 0xb55ac170>

  File "/home/pi/services/ardupilot_manager/autopilot_manager.py", line 491, in get_board_to_be_used
    raise RuntimeError("Only available board is SITL, and it wasn't explicitly chosen.")

RuntimeError: Only available board is SITL, and it wasn't explicitly chosen.

I tried the following steps:

  • Changed raspberry Pi to raspberry Pi 4 Model B
  • Changed the SD card to a 128Gb Class A2 Sandisk
  • Updated the flight controller via USB directly using both QGround Control and Mission Planner
  • Tried to revert back to another stable version of BlueOS