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

-
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

