I am looking to make indicator lights for my computer to indicate things such as system load, IO usage, et cetera, using an Arduino and NeoPixels. I would like to just plug it into my computer, and have some custom software connect to it and send it the data it needs as my computer runs.
The part I am having trouble with is figuring out how to connect the Arduino to the computer in a way that is consistent in the long term.
I have had issues with the Arduino switching which /dev/ttyAMC* port it is assigned, so I looked for options other than the USB serial. The only other way seems to be USB, as that is the only common general purpose port these days.
This is where my problem lies. People don't seem to be doing this sort of thing, or at least they don't post about it.
The Teensy can act as a USB HID, but the raw HID feature hasn't been updated in almost a decade, the host side code is based on deprecated libraries, and it seems oriented more for Teensy to computer transfers.
There doesn't seem to be any consumer level USB interface chips available, either.
I found V-USB, which seems like a solution to my problems, in fact someone even used it to do basically what I want to do. However, I would still need to learn the library.
So, my question is what is the recommended way of interfacing between a computer and Arduino in the long term? Is USB support really necessary, or have I just overthought the entire thing?