Hi Jaka, I used this python script to flash bootloader. https://docs.luxonis.com/software/depthai/examples/flash_bootloader/
You’re right, the behaviour happens on both `sudo reboot` and after a cold power cut if the devices are plugged in and also simply stop and restart the manual run on the same boot. It originally started after the cameras stopped being detected a few hours into runtime, and now it’s reproducible every restart.
Here are the trimmed `dmesg` logs after a reboot with both OAKs plugged in (originally they are four, I unplugged two for testing purposes ) . As for today I am working only with two cameras connected. So in working condition:
Sep 05 11:09:29 kernel: usb 3-1.1.1: New USB device found, idVendor=03e7, idProduct=f63c Product: Luxonis Bootloader Serial: 18443010E13C3BF500
Sep 05 11:09:29 kernel: usb 3-1.3.1: New USB device found, idVendor=03e7, idProduct=f63c Product: Luxonis Bootloader Serial: 14442C1061B4D8D600
and in run time
Sep 05 11:10:22 kernel: usb 4-1.1.1: New USB device found, idVendor=03e7, idProduct=f63b Product: Luxonis Device Serial: 18443010E13C3BF500
Sep 05 11:10:22 kernel: usb 4-1.3.1: New USB device found, idVendor=03e7, idProduct=f63b Product: Luxonis Device Serial: 14442C1061B4D8D600
lsusb -t
/: Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/1p, 480M
/: Bus 002.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/4p, 10000M
/: Bus 003.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/12p, 480M
|__ Port 001: Dev 002, If 0, Class=Hub, Driver=hub/4p, 480M
|__ Port 001: Dev 005, If 0, Class=Hub, Driver=hub/1p, 480M
|__ Port 003: Dev 007, If 0, Class=Hub, Driver=hub/1p, 480M
|__ Port 002: Dev 003, If 0, Class=Hub, Driver=hub/2p, 480M
|__ Port 002: Dev 006, If 0, Class=Communications, Driver=cdc_acm, 12M
|__ Port 002: Dev 006, If 1, Class=CDC Data, Driver=cdc_acm, 12M
|__ Port 010: Dev 004, If 0, Class=Wireless, Driver=btusb, 12M
|__ Port 010: Dev 004, If 1, Class=Wireless, Driver=btusb, 12M
/: Bus 004.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/4p, 10000M
|__ Port 001: Dev 002, If 0, Class=Hub, Driver=hub/4p, 10000M
|__ Port 001: Dev 004, If 0, Class=Hub, Driver=hub/1p, 5000M
|__ Port 001: Dev 006, If 0, Class=Vendor Specific Class, Driver=usbfs, 5000M
|__ Port 003: Dev 005, If 0, Class=Hub, Driver=hub/1p, 5000M
|__ Port 001: Dev 007, If 0, Class=Vendor Specific Class, Driver=usbfs, 5000M
|__ Port 004: Dev 003, If 0, Class=Hub, Driver=hub/2p, 10000M
/: Bus 005.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/2p, 480M
/: Bus 006.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/4p, 10000M
dmesg around a manual stop/start (same boot)
After I stop and start the app manually, devices bounce between bootloader and runtime and end up stuck in bootloader on USB2:
12:15:47 kernel: usb 3-1.1.1: New USB device found, idVendor=03e7, idProduct=f63c Product: Luxonis Bootloader
12:15:47 kernel: usb 3-1.3.1: New USB device found, idVendor=03e7, idProduct=f63c Product: Luxonis Bootloader
12:15:58 kernel: usb 4-1.1.1: New USB device found, idVendor=03e7, idProduct=f63b Product: Luxonis Device
12:15:58 kernel: usb 4-1.3.1: New USB device found, idVendor=03e7, idProduct=f63b Product: Luxonis Device
12:16:13 kernel: usb 3-1.1.1: New USB device found, idVendor=03e7, idProduct=f63c Product: Luxonis Bootloader
12:16:31 kernel: usb 3-1.3.1: New USB device found, idVendor=03e7, idProduct=f63c Product: Luxonis Bootloader
/: Bus 003.Port 001: Dev 002, Class=Hub, 480M
|__ Port 001: Dev 014, If 0, Class=Vendor Specific Class, Driver=[none], 480M
/: Bus 003.Port 001: Dev 002, Class=Hub, 480M
|__ Port 003: Dev 007, If 0, Class=Hub, 480M
|__ Port 001: Dev 015, If 0, Class=Vendor Specific Class, Driver=[none], 480M