I have a nice little Arduino based combination ambilight clone + IR receiver box, connected to a diskless Linux machine (Ubuntu) which is booting from USB and running a media server and other assorted toys.
The Arduino (mega) communicates over USB with the Linux box in both directions.
My only problem is that the Linux box won't boot if you power it on with the Arduino connected.
It (incorrectly) identifies the Arduino as a "boot" device - albeit one which of course has no bootable media.
So it just sits there complaining about no boot media in the device, until you physically disconnect the Arduino and power cycle it.
Which sort of ruins my WakeOnLan scheme for using this box remotely.
My problem is that the Linux box boots from USB already .. it is diskless (well, spinning-diskless). It has a USB drive ...
With no arduino connected it boots from the USB drive fine.
With the arduino connected, it tries to boot from the Arduino.
So Linux never gets anywhere near starting.
yep, there are multiple USB ports (at least 4, maybe more), and no, there are unfortunately no obvious BIOS settings to allow me to disable boot on one of them.
Or only allow boot on one of them
thanks, I'm aware of that UUID trick, I use it in my fstab on other systems to make sure that a given USB drive will always get mounted at the same mount point.
It's not going to help here because the problem happens long before Linux has booted.
I guess I will have to do some more research into this ... but not looking hopeful at the moment ...
The problem has to be a bug in the BIOS. The Arduino identifies itself as a USB serial device which is certainly not an appropriate device for booting an operating system.
Have you checked for BIOS updates?
Try rearranging the USB devices (change which device is connected to which port).